From 8db92d688dd7a6ac9cab522c081f237c89071fb8 Mon Sep 17 00:00:00 2001 From: ZiWei Chen <98569699+kazrael2119@users.noreply.github.com> Date: Fri, 21 Jun 2024 18:37:01 +0800 Subject: [PATCH 01/52] disable flatten for JS for mongocluster, deploymentstacks and appcomplianceautomation (#29361) * disable flatten for JS for mongocluster * Update readme.typescript.md * update --- .../resource-manager/readme.typescript.md | 2 ++ .../mongocluster/resource-manager/readme.typescript.md | 2 ++ specification/resources/resource-manager/readme.typescript.md | 2 ++ 3 files changed, 6 insertions(+) diff --git a/specification/appcomplianceautomation/resource-manager/readme.typescript.md b/specification/appcomplianceautomation/resource-manager/readme.typescript.md index 837da7ab658b..ad2c9dc27312 100644 --- a/specification/appcomplianceautomation/resource-manager/readme.typescript.md +++ b/specification/appcomplianceautomation/resource-manager/readme.typescript.md @@ -4,6 +4,8 @@ These settings apply only when `--typescript` is specified on the command line. Please also specify `--typescript-sdks-folder=`. ``` yaml $(typescript) +modelerfour: + flatten-models: false typescript: azure-arm: true package-name: "@azure/arm-appcomplianceautomation" diff --git a/specification/mongocluster/resource-manager/readme.typescript.md b/specification/mongocluster/resource-manager/readme.typescript.md index cef5b59af00e..230cd137c5c0 100644 --- a/specification/mongocluster/resource-manager/readme.typescript.md +++ b/specification/mongocluster/resource-manager/readme.typescript.md @@ -4,6 +4,8 @@ These settings apply only when `--typescript` is specified on the command line. Please also specify `--typescript-sdks-folder=`. ``` yaml $(typescript) +modelerfour: + flatten-models: false typescript: azure-arm: true package-name: "@azure/arm-mongocluster" diff --git a/specification/resources/resource-manager/readme.typescript.md b/specification/resources/resource-manager/readme.typescript.md index 8fd4ad2d78e0..066d729dcc04 100644 --- a/specification/resources/resource-manager/readme.typescript.md +++ b/specification/resources/resource-manager/readme.typescript.md @@ -28,6 +28,8 @@ typescript: ``` ```yaml $(typescript) && $(package-deploymentstacks) && !$(profile-content) +modelerfour: + flatten-models: false typescript: package-name: "@azure/arm-resourcesdeploymentstacks" output-folder: "$(typescript-sdks-folder)/sdk/resourcesdeploymentstacks/arm-resourcesdeploymentstacks" From 1d96e34c91b7fdc03dd334acaf67f878ea5e663a Mon Sep 17 00:00:00 2001 From: steve munk <33468793+stevemunk@users.noreply.github.com> Date: Fri, 21 Jun 2024 07:31:14 -0700 Subject: [PATCH 02/52] Update documentation for Azure Maps Route v1 API (#29524) * https://msazure.visualstudio.com/One/_workitems/edit/28479372 * https://msazure.visualstudio.com/One/_workitems/edit/28479372 --- specification/maps/data-plane/Route/preview/1.0/route.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/specification/maps/data-plane/Route/preview/1.0/route.json b/specification/maps/data-plane/Route/preview/1.0/route.json index 8b210b82e594..301fe9e9d10e 100644 --- a/specification/maps/data-plane/Route/preview/1.0/route.json +++ b/specification/maps/data-plane/Route/preview/1.0/route.json @@ -710,7 +710,7 @@ "name": "routeRepresentation", "x-ms-client-name": "routeRepresentationForBestOrder", "in": "query", - "description": "Specifies the representation of the set of routes provided as response. This parameter value can only be used in conjunction with computeBestOrder=true.", + "description": "Specifies the representation of the set of routes provided as response.", "type": "string", "enum": [ "polyline", @@ -731,7 +731,7 @@ }, { "value": "none", - "description": "Includes only the optimized waypoint indices but does not include the route geometry in the response." + "description": "Includes only the optimized waypoint indices but does not include the route geometry in the response. This parameter value can only be used in conjunction with computeBestOrder=true." } ] }, @@ -828,7 +828,7 @@ "RouteInstructionsType": { "name": "instructionsType", "in": "query", - "description": "If specified, guidance instructions will be returned. Note that the instructionsType parameter cannot be used in conjunction with routeRepresentation=none", + "description": "If specified, guidance instructions will be returned. Note that the instructionsType parameter cannot be used in conjunction with routeRepresentation=none.", "type": "string", "enum": [ "coded", From a0ace9e8bb9e3fcb050d198718ce2a13197ea798 Mon Sep 17 00:00:00 2001 From: nikhilpadhye1 <68977752+nikhilpadhye1@users.noreply.github.com> Date: Fri, 21 Jun 2024 12:21:41 -0700 Subject: [PATCH 03/52] =?UTF-8?q?Moving=20missed=20changes=20from=202023-1?= =?UTF-8?q?1-01=20packet=20capture=20swagger=20fix=20to=20l=E2=80=A6=20(#2?= =?UTF-8?q?9473)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Adds base for updating Microsoft.Network from version stable/2023-11-01 to version 2024-01-01 * Updates readme * Updates API version in new specs and examples * Add examples for Subnet peering and v6 Subnet peering. (#28827) Add examples for Subnet peering and v6 Subnet peering. --------- Co-authored-by: saurabh83 * Init (#29127) Co-authored-by: Abhishek Shah * Adding the new response code to the 2024-01-01 version release of swagger to match the bugfix in 2023-11-01 (#29048) Co-authored-by: Arsheen Khatib (from Dev Box) * Added NoHealthyBackendsBehavior (#28868) Added the property "NoHealthyBackendsBehavior" to the Probe properties. * VirtualNetworkGatewayConnection using key vault for authentication. (#28760) * Add parameters for cert based auth connection * retrigger checks * retrigger checks * lintDiff * Trigger Build * revert PATCH changes * fix * change managed identity to v5 * add format and description * added networkidentifier under vnet->subet->serviceendpoint (#29292) * added networkidentifier under vnet->subet->serviceendpoint * resolving conflict (#29343) * Fix for PR VirtualNetworkGatewayConnection using key vault for authentication. (#29357) * Fix * Fix2 --------- Co-authored-by: Khushboo Baheti * Adding GET operaton for Network Virtual Appliance Inbound Secuirty Rule (#29339) * Moving missed changes from 2023-11-01 packet capture swagger fix to latest api version * Add CrossConnection Name as an optional query parameter in List ExpressRoute CrossConnection (#29251) * Add CrossConnection name as an optional query parameter for List CrossConnection * update example * Addressing comments * Change to OData filtering * Fix the parameter reference * Update --------- Co-authored-by: Jianqi Zhao * initial changes (#29235) * adding supression for the breaking change in azure-sdk-for-go * adding correct package for this supression --------- Co-authored-by: GuptaVertika <149072034+GuptaVertika@users.noreply.github.com> Co-authored-by: saurabh83 Co-authored-by: saurabh83 Co-authored-by: Abhishek Shah <16267081+abhi7860@users.noreply.github.com> Co-authored-by: Abhishek Shah Co-authored-by: AFK1194 Co-authored-by: Arsheen Khatib (from Dev Box) Co-authored-by: Eugenio Peña García <70240915+EugenioPena@users.noreply.github.com> Co-authored-by: daweiwang-microsoft <165709729+daweiwang-microsoft@users.noreply.github.com> Co-authored-by: Bhupesh Kumar Bhatt <52891188+bhupeshbhatt1985@users.noreply.github.com> Co-authored-by: Khushboo Baheti <37917868+Khushboo-Baheti@users.noreply.github.com> Co-authored-by: Khushboo Baheti Co-authored-by: Ashutosh Mishra <163998769+ashutmi@users.noreply.github.com> Co-authored-by: jianzhao1992 <125631957+jianzhao1992@users.noreply.github.com> Co-authored-by: Jianqi Zhao Co-authored-by: nimaller <71352534+nimaller@users.noreply.github.com> --- .../stable/2024-01-01/azureFirewall.json | 20 +---- .../examples/AzureFirewallPacketCapture.json | 80 +++++++++---------- .../resource-manager/sdk-suppressions.yaml | 6 ++ 3 files changed, 47 insertions(+), 59 deletions(-) create mode 100644 specification/network/resource-manager/sdk-suppressions.yaml diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/azureFirewall.json index df777fa6ecc5..26de624c5689 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/azureFirewall.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/azureFirewall.json @@ -1217,7 +1217,7 @@ }, "description": "List of SNAT IP Prefixes learnt by firewall to not SNAT" }, - "FirewallPacketCaptureParametersFormat": { + "FirewallPacketCaptureParameters": { "type": "object", "properties": { "durationInSeconds": { @@ -1267,7 +1267,7 @@ "x-ms-identifiers": [] } }, - "description": "Packet capture parameters on azure firewall." + "description": "Azure Firewall Packet Capture Parameters." }, "AzureFirewallPacketCaptureFlags": { "type": "object", @@ -1321,22 +1321,6 @@ } }, "description": "Group of src/dest ips and ports to be captured." - }, - "FirewallPacketCaptureParameters": { - "type": "object", - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/FirewallPacketCaptureParametersFormat", - "description": "Properties of the azure firewall." - } - }, - "allOf": [ - { - "$ref": "./network.json#/definitions/SubResource" - } - ], - "description": "Azure Firewall Packet Capture Parameters resource." } } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/AzureFirewallPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/AzureFirewallPacketCapture.json index c9b956952b9b..ef6fa4397e1c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/AzureFirewallPacketCapture.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/AzureFirewallPacketCapture.json @@ -5,47 +5,45 @@ "resourceGroupName": "rg1", "azureFirewallName": "azureFirewall1", "parameters": { - "properties": { - "durationInSeconds": 300, - "numberOfPacketsToCapture": 5000, - "sasUrl": "someSASURL", - "fileName": "azureFirewallPacketCapture", - "protocol": "Any", - "flags": [ - { - "type": "syn" - }, - { - "type": "fin" - } - ], - "filters": [ - { - "sources": [ - "20.1.1.0" - ], - "destinations": [ - "20.1.2.0" - ], - "destinationPorts": [ - "4500" - ] - }, - { - "sources": [ - "10.1.1.0", - "10.1.1.1" - ], - "destinations": [ - "10.1.2.0" - ], - "destinationPorts": [ - "123", - "80" - ] - } - ] - } + "durationInSeconds": 300, + "numberOfPacketsToCapture": 5000, + "sasUrl": "someSASURL", + "fileName": "azureFirewallPacketCapture", + "protocol": "Any", + "flags": [ + { + "type": "syn" + }, + { + "type": "fin" + } + ], + "filters": [ + { + "sources": [ + "20.1.1.0" + ], + "destinations": [ + "20.1.2.0" + ], + "destinationPorts": [ + "4500" + ] + }, + { + "sources": [ + "10.1.1.0", + "10.1.1.1" + ], + "destinations": [ + "10.1.2.0" + ], + "destinationPorts": [ + "123", + "80" + ] + } + ] } }, "responses": { diff --git a/specification/network/resource-manager/sdk-suppressions.yaml b/specification/network/resource-manager/sdk-suppressions.yaml new file mode 100644 index 000000000000..f5f18097c539 --- /dev/null +++ b/specification/network/resource-manager/sdk-suppressions.yaml @@ -0,0 +1,6 @@ +suppressions: + azure-sdk-for-go: + - package: 'sdk/resourcemanager/network/armnetwork' + breaking-changes: + - Struct `FirewallPacketCaptureParametersFormat` has been removed + - Field `ID`, `Properties` of struct `FirewallPacketCaptureParameters` has been removed \ No newline at end of file From 8dd3c52b26979c5870180bca34bb80370e348193 Mon Sep 17 00:00:00 2001 From: ajtms <154369796+ajtms@users.noreply.github.com> Date: Fri, 21 Jun 2024 17:39:21 -0700 Subject: [PATCH 04/52] Fixes for x-ms-examples used in 2023 API specification validation (#29452) * Added missing id property to some example resources. Added headers with locations to long-running operation examples. * Added some missing information on some response object typings regarding the location property used in long-running operations. * Fixed a possible typo 'azure-async-operation' to 'azure-asyncoperation' (removed a hyphen). * Ran prettier against azureFirewall.json * Applying the 2023-05-01 validation fixes to the 2023-06-01 and 2023-09-01 versions as well. * Removed duplicate property * Added missing location header to the 06 and 09 verisions, similar to the 05 version. * Added missing IDs to certain resource gets/puts. Added missing location header for long running delete operation. * Updated 2023-09-01 stable examples. * Fixed improper resource id * Fixed example errors for 2023-06-01. Fixed small whitespace typo on a 2023-09-01 file. * Updated 2023-05-01 firewall examples. Fixed small whitespace typoe missed from previous commit. * Updated 2023-04-01 examples with resource IDs. Updated some resource IDs that use the wrong firewall name in their path. * Updated firewall examples for 2023-02-01. * Added location headers for several long-running operations. Updated some location headers so their URL paths have the accurate api-version. --- .../2023-02-01/examples/AzureFirewallDelete.json | 6 +++++- .../2023-02-01/examples/AzureFirewallGet.json | 5 ++++- .../AzureFirewallGetWithAdditionalProperties.json | 5 ++++- .../examples/AzureFirewallGetWithIpGroups.json | 5 ++++- .../examples/AzureFirewallGetWithMgmtSubnet.json | 7 +++++-- .../examples/AzureFirewallGetWithZones.json | 5 ++++- .../examples/AzureFirewallListByResourceGroup.json | 7 +++++-- .../examples/AzureFirewallListBySubscription.json | 7 +++++-- .../AzureFirewallListLearnedIPPrefixes.json | 6 +++++- .../2023-02-01/examples/AzureFirewallPut.json | 13 +++++++++++-- .../AzureFirewallPutWithAdditionalProperties.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithIpGroups.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithMgmtSubnet.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithZones.json | 13 +++++++++++-- .../examples/AzureFirewallUpdateTags.json | 6 +++++- .../2023-04-01/examples/AzureFirewallDelete.json | 6 +++++- .../2023-04-01/examples/AzureFirewallGet.json | 5 ++++- .../AzureFirewallGetWithAdditionalProperties.json | 5 ++++- .../examples/AzureFirewallGetWithIpGroups.json | 5 ++++- .../examples/AzureFirewallGetWithMgmtSubnet.json | 7 +++++-- .../examples/AzureFirewallGetWithZones.json | 5 ++++- .../examples/AzureFirewallListByResourceGroup.json | 7 +++++-- .../examples/AzureFirewallListBySubscription.json | 7 +++++-- .../AzureFirewallListLearnedIPPrefixes.json | 6 +++++- .../2023-04-01/examples/AzureFirewallPut.json | 13 +++++++++++-- .../AzureFirewallPutWithAdditionalProperties.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithIpGroups.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithMgmtSubnet.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithZones.json | 13 +++++++++++-- .../examples/AzureFirewallUpdateTags.json | 6 +++++- .../2023-05-01/examples/AzureFirewallGet.json | 2 +- .../AzureFirewallGetWithAdditionalProperties.json | 2 +- .../examples/AzureFirewallGetWithIpGroups.json | 2 +- .../examples/AzureFirewallGetWithMgmtSubnet.json | 4 ++-- .../examples/AzureFirewallGetWithZones.json | 2 +- .../examples/AzureFirewallListByResourceGroup.json | 4 ++-- .../examples/AzureFirewallListBySubscription.json | 4 ++-- .../2023-05-01/examples/AzureFirewallPut.json | 7 +++++-- .../AzureFirewallPutWithAdditionalProperties.json | 7 +++++-- .../examples/AzureFirewallPutWithIpGroups.json | 7 +++++-- .../examples/AzureFirewallPutWithMgmtSubnet.json | 7 +++++-- .../examples/AzureFirewallPutWithZones.json | 6 ++++-- .../2023-06-01/examples/AzureFirewallDelete.json | 2 +- .../2023-06-01/examples/AzureFirewallGet.json | 2 +- .../AzureFirewallGetWithAdditionalProperties.json | 2 +- .../examples/AzureFirewallGetWithIpGroups.json | 2 +- .../examples/AzureFirewallGetWithMgmtSubnet.json | 4 ++-- .../examples/AzureFirewallGetWithZones.json | 2 +- .../examples/AzureFirewallListByResourceGroup.json | 4 ++-- .../examples/AzureFirewallListBySubscription.json | 4 ++-- .../AzureFirewallListLearnedIPPrefixes.json | 2 +- .../2023-06-01/examples/AzureFirewallPut.json | 7 +++++-- .../AzureFirewallPutWithAdditionalProperties.json | 7 +++++-- .../examples/AzureFirewallPutWithIpGroups.json | 7 +++++-- .../examples/AzureFirewallPutWithMgmtSubnet.json | 7 +++++-- .../examples/AzureFirewallPutWithZones.json | 6 ++++-- .../examples/AzureFirewallUpdateTags.json | 2 +- .../2023-09-01/examples/AzureFirewallDelete.json | 2 +- .../2023-09-01/examples/AzureFirewallGet.json | 2 +- .../AzureFirewallGetWithAdditionalProperties.json | 2 +- .../examples/AzureFirewallGetWithIpGroups.json | 2 +- .../examples/AzureFirewallGetWithMgmtSubnet.json | 4 ++-- .../examples/AzureFirewallGetWithZones.json | 2 +- .../examples/AzureFirewallListByResourceGroup.json | 4 ++-- .../examples/AzureFirewallListBySubscription.json | 4 ++-- .../AzureFirewallListLearnedIPPrefixes.json | 2 +- .../2023-09-01/examples/AzureFirewallPut.json | 7 +++++-- .../AzureFirewallPutWithAdditionalProperties.json | 7 +++++-- .../examples/AzureFirewallPutWithIpGroups.json | 7 +++++-- .../examples/AzureFirewallPutWithMgmtSubnet.json | 7 +++++-- .../examples/AzureFirewallPutWithZones.json | 6 ++++-- .../2023-11-01/examples/AzureFirewallDelete.json | 6 +++++- .../2023-11-01/examples/AzureFirewallGet.json | 5 ++++- .../AzureFirewallGetWithAdditionalProperties.json | 5 ++++- .../examples/AzureFirewallGetWithIpGroups.json | 5 ++++- .../examples/AzureFirewallGetWithMgmtSubnet.json | 7 +++++-- .../examples/AzureFirewallGetWithZones.json | 5 ++++- .../examples/AzureFirewallListByResourceGroup.json | 7 +++++-- .../examples/AzureFirewallListBySubscription.json | 7 +++++-- .../AzureFirewallListLearnedIPPrefixes.json | 6 +++++- .../2023-11-01/examples/AzureFirewallPut.json | 13 +++++++++++-- .../AzureFirewallPutWithAdditionalProperties.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithIpGroups.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithMgmtSubnet.json | 13 +++++++++++-- .../examples/AzureFirewallPutWithZones.json | 13 +++++++++++-- .../examples/AzureFirewallUpdateTags.json | 6 +++++- 86 files changed, 410 insertions(+), 134 deletions(-) diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallDelete.json index 58bb91e8e96d..1549f36c6426 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallDelete.json @@ -7,7 +7,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-02-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + } + }, "204": {} } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGet.json index 4a14150d0179..bb5d4711bebe 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -74,6 +75,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -123,6 +125,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithAdditionalProperties.json index 8528f6c58bb5..348f9603c5a7 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -74,6 +75,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -123,6 +125,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithIpGroups.json index 681f4b69e578..ec014a403653 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithIpGroups.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithMgmtSubnet.json index 717776c62290..fde5c2952515 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -43,7 +43,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -58,6 +58,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -88,6 +89,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -137,6 +139,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithZones.json index 65408b4ab32a..0a3e0a59944f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallGetWithZones.json @@ -31,7 +31,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -48,6 +48,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -78,6 +79,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -127,6 +129,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListByResourceGroup.json index f9e12c260a60..505900184a51 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListByResourceGroup.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListByResourceGroup.json @@ -24,7 +24,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -40,7 +40,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -55,6 +55,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -85,6 +86,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -134,6 +136,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListBySubscription.json index 7465e94395fe..4b1c1757312e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListBySubscription.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListBySubscription.json @@ -23,7 +23,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -39,7 +39,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -54,6 +54,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -84,6 +85,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -133,6 +135,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListLearnedIPPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListLearnedIPPrefixes.json index 55c8a907d0f0..ccef685f35bc 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListLearnedIPPrefixes.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallListLearnedIPPrefixes.json @@ -6,7 +6,11 @@ "azureFirewallName": "azureFirewall1" }, "responses": { - "202": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-02-01&t=638385313328642925&c=abc-123&s=def-456&h=xyz-789" + } + }, "200": { "body": { "ipPrefixes": [ diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPut.json index d3f4760599ee..3f249562ec84 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPut.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPut.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -198,6 +201,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -228,6 +232,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -277,6 +282,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -348,7 +354,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -365,6 +371,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -395,6 +402,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -444,6 +452,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithAdditionalProperties.json index f0e4a0973d2b..912697e27b61 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -186,7 +189,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -203,6 +206,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -233,6 +237,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -282,6 +287,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -355,7 +361,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -372,6 +378,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -402,6 +409,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -451,6 +459,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithIpGroups.json index 6ca6a2d4a04b..0c796fb2d7a1 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithIpGroups.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -198,6 +201,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -228,6 +232,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -277,6 +282,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -347,7 +353,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -364,6 +370,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -393,6 +400,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -442,6 +450,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithMgmtSubnet.json index b31b46ecbca6..4fdd5bd795cb 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -43,6 +43,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -192,7 +195,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -209,6 +212,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -239,6 +243,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -288,6 +293,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -358,7 +364,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -375,6 +381,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -405,6 +412,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -454,6 +462,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithZones.json index a521ea9ddf73..28935f5fc47e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallPutWithZones.json @@ -36,6 +36,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -66,6 +67,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -115,6 +117,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -189,7 +192,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -206,6 +209,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -236,6 +240,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -285,6 +290,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -360,7 +366,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -377,6 +383,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -407,6 +414,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -456,6 +464,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallUpdateTags.json index efe16f0b83db..cc58879c354b 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallUpdateTags.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-02-01/examples/AzureFirewallUpdateTags.json @@ -12,7 +12,11 @@ } }, "responses": { - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-02-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + } + }, "200": { "body": { "name": "fw1", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallDelete.json index c0d6f48f8044..6a299d3ae34e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallDelete.json @@ -7,7 +7,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-04-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + } + }, "204": {} } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGet.json index 74cd3b007669..147ef64a8acb 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -74,6 +75,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -123,6 +125,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithAdditionalProperties.json index b0c9f6b89b4a..0f5f1009fc2a 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -74,6 +75,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -123,6 +125,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithIpGroups.json index ab80ab9fd4ab..a205c1eeaa21 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithIpGroups.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithMgmtSubnet.json index aa1985bc539d..a0c06971d7e5 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -43,7 +43,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -58,6 +58,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -88,6 +89,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -137,6 +139,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithZones.json index bff2ded76323..cd23f826bf1f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallGetWithZones.json @@ -31,7 +31,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -48,6 +48,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -78,6 +79,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -127,6 +129,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListByResourceGroup.json index 75a8453ead82..a5e533c84fa9 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListByResourceGroup.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListByResourceGroup.json @@ -24,7 +24,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -40,7 +40,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -55,6 +55,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -85,6 +86,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -134,6 +136,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListBySubscription.json index 85c6726729bf..2ed72d41ea9e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListBySubscription.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListBySubscription.json @@ -23,7 +23,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -39,7 +39,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -54,6 +54,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -84,6 +85,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -133,6 +135,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListLearnedIPPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListLearnedIPPrefixes.json index ebe8df9f28ec..9c087556d9af 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListLearnedIPPrefixes.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallListLearnedIPPrefixes.json @@ -6,7 +6,11 @@ "azureFirewallName": "azureFirewall1" }, "responses": { - "202": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-04-01&t=638385313328642925&c=abc-123&s=def-456&h=xyz-789" + } + }, "200": { "body": { "ipPrefixes": [ diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPut.json index dd59104aa8b3..c091ac1559e3 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPut.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPut.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -198,6 +201,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -228,6 +232,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -277,6 +282,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -348,7 +354,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -365,6 +371,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -395,6 +402,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -444,6 +452,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithAdditionalProperties.json index ae8882c0b7f5..2dba2e578da1 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -186,7 +189,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -203,6 +206,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -233,6 +237,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -282,6 +287,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -355,7 +361,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -372,6 +378,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -402,6 +409,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -451,6 +459,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithIpGroups.json index 239def47795d..586ffbf1b505 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithIpGroups.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -198,6 +201,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -228,6 +232,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -277,6 +282,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -347,7 +353,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -364,6 +370,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -393,6 +400,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -442,6 +450,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithMgmtSubnet.json index d701dc0afb61..aec994e2c7c3 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -43,6 +43,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -192,7 +195,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -209,6 +212,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -239,6 +243,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -288,6 +293,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -358,7 +364,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -375,6 +381,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -405,6 +412,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -454,6 +462,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithZones.json index 30b2addf5d3c..63c955a2804e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallPutWithZones.json @@ -36,6 +36,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -66,6 +67,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -115,6 +117,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -189,7 +192,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -206,6 +209,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -236,6 +240,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -285,6 +290,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -360,7 +366,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -377,6 +383,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -407,6 +414,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -456,6 +464,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallUpdateTags.json index a597e46adcac..95bf384f7386 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallUpdateTags.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-04-01/examples/AzureFirewallUpdateTags.json @@ -12,7 +12,11 @@ } }, "responses": { - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-04-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + } + }, "200": { "body": { "name": "fw1", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGet.json index 6d50ba91b519..ebac1e9c6ddd 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithAdditionalProperties.json index deb24e66f98c..4434d3c79338 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithIpGroups.json index 535a5bd21c8b..b3cff65d5334 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithIpGroups.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithMgmtSubnet.json index 333a9fce1a85..7e96d0b550be 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -43,7 +43,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithZones.json index 7bdd3535fd16..4ca473586e1f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallGetWithZones.json @@ -31,7 +31,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallListByResourceGroup.json index e5314b813c02..622e5ec63f3b 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallListByResourceGroup.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallListByResourceGroup.json @@ -24,7 +24,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -40,7 +40,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallListBySubscription.json index a4305fbfed69..067c7f0fd8cc 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallListBySubscription.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallListBySubscription.json @@ -23,7 +23,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -39,7 +39,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPut.json index 994dc5875daa..976bcc40ef84 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPut.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPut.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -351,7 +354,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithAdditionalProperties.json index b2c45b0f56ab..b3882d5b7ec7 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -186,7 +189,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -358,7 +361,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithIpGroups.json index 0071150d656d..cf6be14b4c9d 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithIpGroups.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -350,7 +353,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithMgmtSubnet.json index dd247ef04b46..183ebbdb42e3 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -43,6 +43,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -192,7 +195,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -361,7 +364,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithZones.json index 0a9007531a61..e6e70ceea768 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-05-01/examples/AzureFirewallPutWithZones.json @@ -36,6 +36,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -116,6 +117,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -190,7 +192,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -364,7 +366,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallDelete.json index caf958c7093f..2df315047731 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallDelete.json @@ -9,7 +9,7 @@ "200": {}, "202": { "headers": { - "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-05-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-06-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" } }, "204": {} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGet.json index 1b80b7f27ca1..1b49e0c054f1 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithAdditionalProperties.json index af5e2c4f45e3..b7e8507a3209 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithIpGroups.json index 610f29354a52..b56cac419385 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithIpGroups.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithMgmtSubnet.json index 545f3cf4679b..0e4272f88344 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -43,7 +43,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithZones.json index 17668990980f..2b077c29b225 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallGetWithZones.json @@ -31,7 +31,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListByResourceGroup.json index 19732c4f67cc..618810dc8766 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListByResourceGroup.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListByResourceGroup.json @@ -24,7 +24,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -40,7 +40,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListBySubscription.json index 5d015a132b60..f4eb97bfa2d0 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListBySubscription.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListBySubscription.json @@ -23,7 +23,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -39,7 +39,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListLearnedIPPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListLearnedIPPrefixes.json index ed6f48f90245..3e2962469841 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListLearnedIPPrefixes.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallListLearnedIPPrefixes.json @@ -8,7 +8,7 @@ "responses": { "202": { "headers": { - "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-05-01&t=638385313328642925&c=abc-123&s=def-456&h=xyz-789" + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-06-01&t=638385313328642925&c=abc-123&s=def-456&h=xyz-789" } }, "200": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPut.json index 665e1aa5f5d5..f6756065df64 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPut.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPut.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -351,7 +354,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithAdditionalProperties.json index 2d4c7478ecd9..72b7028ea801 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -186,7 +189,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -358,7 +361,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithIpGroups.json index 4b4dc37640d4..6bd556a5bb89 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithIpGroups.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -350,7 +353,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithMgmtSubnet.json index d9899d0b02fd..1cfbbe30ac3e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -43,6 +43,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -192,7 +195,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -361,7 +364,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithZones.json index 255da350d715..c3964fee0e32 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallPutWithZones.json @@ -36,6 +36,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -116,6 +117,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -190,7 +192,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -364,7 +366,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallUpdateTags.json index a8a3706f3d4e..9b05cf22a66c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallUpdateTags.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-06-01/examples/AzureFirewallUpdateTags.json @@ -14,7 +14,7 @@ "responses": { "202": { "headers": { - "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-05-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-06-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" } }, "200": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallDelete.json index 5210053d7d7f..7d0bd2e21970 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallDelete.json @@ -9,7 +9,7 @@ "200": {}, "202": { "headers": { - "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-05-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-09-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" } }, "204": {} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGet.json index 6eef9ba17cb7..2f313279e3a6 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithAdditionalProperties.json index 1dce88a58e52..313ee6821256 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithIpGroups.json index 2b6c16e05df8..fa9710be8e7f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithIpGroups.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithMgmtSubnet.json index 1c06a13b5c70..0f91bf7342bf 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -43,7 +43,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithZones.json index fac648478a53..b3bfee32e35b 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallGetWithZones.json @@ -31,7 +31,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListByResourceGroup.json index 506bfafcd4db..2d54ba1d9762 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListByResourceGroup.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListByResourceGroup.json @@ -24,7 +24,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -40,7 +40,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListBySubscription.json index d33cdc529335..0810a5cb7f68 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListBySubscription.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListBySubscription.json @@ -23,7 +23,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -39,7 +39,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListLearnedIPPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListLearnedIPPrefixes.json index a151f5b9ae8d..c08d2c115da0 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListLearnedIPPrefixes.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallListLearnedIPPrefixes.json @@ -8,7 +8,7 @@ "responses": { "202": { "headers": { - "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-05-01&t=638385313328642925&c=abc-123&s=def-456&h=xyz-789" + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-09-01&t=638385313328642925&c=abc-123&s=def-456&h=xyz-789" } }, "200": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPut.json index b1090d287777..691bdb815f2f 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPut.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPut.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -351,7 +354,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithAdditionalProperties.json index 3167701fb2cf..0401d78a0480 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -186,7 +189,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -358,7 +361,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithIpGroups.json index 154dbfac598e..8523c5338c2e 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithIpGroups.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -350,7 +353,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithMgmtSubnet.json index 9cec4785cd92..6cfcc68992dc 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -43,6 +43,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -192,7 +195,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -361,7 +364,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithZones.json index e9f20ac65d7f..bc3edd9c4630 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-09-01/examples/AzureFirewallPutWithZones.json @@ -36,6 +36,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -116,6 +117,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -190,7 +192,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -364,7 +366,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallDelete.json index 7f4ad92b9a30..1d994847e0f8 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallDelete.json @@ -7,7 +7,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + } + }, "204": {} } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGet.json index 1875292073c4..f651d40933a3 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -74,6 +75,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -123,6 +125,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithAdditionalProperties.json index e7486965d67d..7e773c8b39c0 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -74,6 +75,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -123,6 +125,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithIpGroups.json index 83daa3090d67..5d038cbce0ff 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithIpGroups.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -44,6 +44,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithMgmtSubnet.json index 423334aa3a0f..1d7843b21e7d 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -27,7 +27,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -43,7 +43,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -58,6 +58,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -88,6 +89,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -137,6 +139,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithZones.json index 109ebfd4ed50..e47375bd54cf 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallGetWithZones.json @@ -31,7 +31,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -48,6 +48,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -78,6 +79,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -127,6 +129,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListByResourceGroup.json index c4f59bbaf328..be5843f47f79 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListByResourceGroup.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListByResourceGroup.json @@ -24,7 +24,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -40,7 +40,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -55,6 +55,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -85,6 +86,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -134,6 +136,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListBySubscription.json index 1d471bbd2706..87b3624cbf14 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListBySubscription.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListBySubscription.json @@ -23,7 +23,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -39,7 +39,7 @@ ], "managementIpConfiguration": { "name": "azureFirewallMgmtIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallMgmtIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -54,6 +54,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -84,6 +85,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -133,6 +135,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListLearnedIPPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListLearnedIPPrefixes.json index 6d1db6c99368..8c3e29879f6d 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListLearnedIPPrefixes.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallListLearnedIPPrefixes.json @@ -6,7 +6,11 @@ "azureFirewallName": "azureFirewall1" }, "responses": { - "202": {}, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01&t=638385313328642925&c=abc-123&s=def-456&h=xyz-789" + } + }, "200": { "body": { "ipPrefixes": [ diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPut.json index d2d2b1d9b9c1..45e0c3359811 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPut.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPut.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -198,6 +201,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -228,6 +232,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -277,6 +282,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -348,7 +354,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -365,6 +371,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -395,6 +402,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -444,6 +452,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithAdditionalProperties.json index 927ed0fd4831..43ee3d4839a2 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithAdditionalProperties.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -186,7 +189,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -203,6 +206,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -233,6 +237,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -282,6 +287,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -355,7 +361,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -372,6 +378,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -402,6 +409,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -451,6 +459,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithIpGroups.json index b9841fb27ca5..cd58bd1e960c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithIpGroups.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithIpGroups.json @@ -32,6 +32,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -62,6 +63,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -111,6 +113,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -181,7 +184,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -198,6 +201,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -228,6 +232,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -277,6 +282,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -347,7 +353,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -364,6 +370,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -393,6 +400,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -442,6 +450,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithMgmtSubnet.json index 7db72a929fdf..b3e4191e7621 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithMgmtSubnet.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -43,6 +43,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -73,6 +74,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -122,6 +124,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -192,7 +195,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -209,6 +212,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -239,6 +243,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -288,6 +293,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -358,7 +364,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -375,6 +381,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -405,6 +412,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -454,6 +462,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithZones.json index 6f7e05b7cabf..ee5b4b6ad2c5 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithZones.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallPutWithZones.json @@ -36,6 +36,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -66,6 +67,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -115,6 +117,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -189,7 +192,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -206,6 +209,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -236,6 +240,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -285,6 +290,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { @@ -360,7 +366,7 @@ "ipConfigurations": [ { "name": "azureFirewallIpConfiguration", - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/ipConfigurations/azureFirewallIpConfiguration", "etag": "w/\\00000000-0000-0000-0000-000000000000\\", "properties": { "provisioningState": "Succeeded", @@ -377,6 +383,7 @@ "applicationRuleCollections": [ { "name": "apprulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/applicationRuleCollections/apprulecoll", "properties": { "priority": 110, "action": { @@ -407,6 +414,7 @@ "natRuleCollections": [ { "name": "natrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/natRuleCollections/natrulecoll", "properties": { "priority": 112, "action": { @@ -456,6 +464,7 @@ "networkRuleCollections": [ { "name": "netrulecoll", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall/networkRuleCollections/netrulecoll", "properties": { "priority": 112, "action": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallUpdateTags.json index d47d19426169..f70c1c3bf2fc 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallUpdateTags.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2023-11-01/examples/AzureFirewallUpdateTags.json @@ -12,7 +12,11 @@ } }, "responses": { - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Network/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-11-01&t=1234567890&c=abc-123&s=def-456&h=xyz-789" + } + }, "200": { "body": { "name": "fw1", From a83c34348fbd25ad79a05e36816b91da0122b583 Mon Sep 17 00:00:00 2001 From: Chenglong Liu <48578056+ChenglongLiu@users.noreply.github.com> Date: Fri, 21 Jun 2024 17:40:32 -0700 Subject: [PATCH 05/52] Fix secret source url format (#29475) --- .../examples/AFDProfiles_ValidateSecret.json | 2 +- .../examples/Secrets_CreateCustomerCertificateType.json | 2 +- .../examples/Secrets_CreateMtlsCertificateChainType.json | 8 ++++---- .../examples/Secrets_CreateUrlSigningKeyType.json | 8 ++++---- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/AFDProfiles_ValidateSecret.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/AFDProfiles_ValidateSecret.json index 9eec791b7db5..2b84bc734267 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/AFDProfiles_ValidateSecret.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/AFDProfiles_ValidateSecret.json @@ -6,7 +6,7 @@ "profileName": "profile1", "validateSecretInput": { "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/certificate/certName" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/certificate/certName" }, "secretType": "CustomerCertificate" } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateCustomerCertificateType.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateCustomerCertificateType.json index cddc40cf2702..156190a399d3 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateCustomerCertificateType.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateCustomerCertificateType.json @@ -11,7 +11,7 @@ "type": "CustomerCertificate", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/certificatename" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/certificatename" }, "useLatestVersion": false } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateMtlsCertificateChainType.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateMtlsCertificateChainType.json index d701ee8b1853..eb3f24800831 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateMtlsCertificateChainType.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateMtlsCertificateChainType.json @@ -11,7 +11,7 @@ "type": "MtlsCertificateChain", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/mTLSCertificateChainname" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/mTLSCertificateChainname" } } } @@ -28,7 +28,7 @@ "type": "MtlsCertificateChain", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/mTLSCertificateChainName" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/mTLSCertificateChainName" }, "expirationDate": "2025-01-01T00:00:00-00:00" }, @@ -47,7 +47,7 @@ "type": "MtlsCertificateChain", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/mTLSCertificateChainName" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/mTLSCertificateChainName" }, "expirationDate": "2025-01-01T00:00:00-00:00" }, @@ -66,7 +66,7 @@ "type": "MtlsCertificateChain", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/mTLSCertificateChainName" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/mTLSCertificateChainName" }, "expirationDate": "2025-01-01T00:00:00-00:00" }, diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateUrlSigningKeyType.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateUrlSigningKeyType.json index ff81c653b478..797ed423dfe2 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateUrlSigningKeyType.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2024-05-01-preview/examples/Secrets_CreateUrlSigningKeyType.json @@ -11,7 +11,7 @@ "type": "UrlSigningKey", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/urlsigningkeyname" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/urlsigningkeyname" }, "keyId": "customKeyId" } @@ -29,7 +29,7 @@ "type": "UrlSigningKey", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/urlsigningkeyname" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/urlsigningkeyname" }, "keyId": "customKeyId" }, @@ -48,7 +48,7 @@ "type": "UrlSigningKey", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/urlsigningkeyname" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/urlsigningkeyname" }, "keyId": "customKeyId" }, @@ -67,7 +67,7 @@ "type": "UrlSigningKey", "secretVersion": "abcdef1234578900abcdef1234567890", "secretSource": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/urlsigningkeyname" + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/kvName/secrets/urlsigningkeyname" }, "keyId": "customKeyId" }, From 9f9d14b5db982b1d554651348adc9bef4b098bdb Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Mon, 24 Jun 2024 11:01:44 +0800 Subject: [PATCH 06/52] [powerbiembedded] Update readme.md (#29551) * Update readme.md * Create readme.python.md --- .../resource-manager/readme.md | 25 +------------------ .../resource-manager/readme.python.md | 19 ++++++++++++++ 2 files changed, 20 insertions(+), 24 deletions(-) create mode 100644 specification/powerbiembedded/resource-manager/readme.python.md diff --git a/specification/powerbiembedded/resource-manager/readme.md b/specification/powerbiembedded/resource-manager/readme.md index 14113378b1b2..d3a48d8cf036 100644 --- a/specification/powerbiembedded/resource-manager/readme.md +++ b/specification/powerbiembedded/resource-manager/readme.md @@ -82,30 +82,7 @@ csharp: ## Python -These settings apply only when `--python` is specified on the command line. -Please also specify `--python-sdks-folder=`. -Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. - -``` yaml $(python) -python-mode: create -python: - azure-arm: true - license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 - namespace: azure.mgmt.powerbiembedded - package-name: azure-mgmt-powerbiembedded - clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/powerbiembedded/azure-mgmt-powerbiembedded/azure/mgmt/powerbiembedded -``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/powerbiembedded/azure-mgmt-powerbiembedded -``` +See configuration in [readme.python.md](./readme.python.md) ## Go diff --git a/specification/powerbiembedded/resource-manager/readme.python.md b/specification/powerbiembedded/resource-manager/readme.python.md new file mode 100644 index 000000000000..4d9931a02b30 --- /dev/null +++ b/specification/powerbiembedded/resource-manager/readme.python.md @@ -0,0 +1,19 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +title: PowerBIEmbeddedManagementClient +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-powerbiembedded +namespace: azure.mgmt.powerbiembedded +package-version: 1.0.0b1 +clear-output-folder: true +``` + +``` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/powerbiembedded/azure-mgmt-powerbiembedded/azure/mgmt/powerbiembedded +``` From 8060dff4840044ffbcd6a1d775734e8e51d1affb Mon Sep 17 00:00:00 2001 From: "Hong Li(MSFT)" <74638143+v-hongli1@users.noreply.github.com> Date: Mon, 24 Jun 2024 13:56:45 +0800 Subject: [PATCH 07/52] Added `stream-style-serialization: false` in `readme.java.md`. (#29542) * Added `stream-style-serialization: false` in `readme.java.md`. --- specification/storagemover/resource-manager/readme.java.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 specification/storagemover/resource-manager/readme.java.md diff --git a/specification/storagemover/resource-manager/readme.java.md b/specification/storagemover/resource-manager/readme.java.md new file mode 100644 index 000000000000..2d18b4c34847 --- /dev/null +++ b/specification/storagemover/resource-manager/readme.java.md @@ -0,0 +1,7 @@ +## Java + +These settings apply only when `--java` is specified on the command line. + +``` yaml $(java) +stream-style-serialization: false +``` \ No newline at end of file From ec7ee8842bf615c2f0354bf8b5b8725fdac9454a Mon Sep 17 00:00:00 2001 From: Weidong Xu Date: Mon, 24 Jun 2024 14:09:03 +0800 Subject: [PATCH 08/52] network, java directive (#29552) --- specification/network/resource-manager/readme.java.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/specification/network/resource-manager/readme.java.md b/specification/network/resource-manager/readme.java.md index 8458778aedc3..acafccae4b47 100644 --- a/specification/network/resource-manager/readme.java.md +++ b/specification/network/resource-manager/readme.java.md @@ -23,6 +23,9 @@ directive: - rename-operation: from: InboundSecurityRule_CreateOrUpdate to: InboundSecurityRuleOperation_CreateOrUpdate + - rename-operation: + from: InboundSecurityRule_Get + to: InboundSecurityRuleOperation_Get - from: vmssNetworkInterface.json where: '$.info' transform: > From a8f672a39048850e4c69f73beca222db0539da03 Mon Sep 17 00:00:00 2001 From: Ray Chen Date: Mon, 24 Jun 2024 17:54:53 +0800 Subject: [PATCH 09/52] Update sdk automation document (#29553) remove openapi hub related steps; change breaking change label property name. --- .../InstallInstructionScriptInputSchema.json | 5 --- documentation/sdkautomation/README.md | 34 +++++-------------- .../SwaggerToSdkConfigSchema.json | 2 +- 3 files changed, 9 insertions(+), 32 deletions(-) diff --git a/documentation/sdkautomation/InstallInstructionScriptInputSchema.json b/documentation/sdkautomation/InstallInstructionScriptInputSchema.json index c2dea969537c..d5befed6f1e6 100644 --- a/documentation/sdkautomation/InstallInstructionScriptInputSchema.json +++ b/documentation/sdkautomation/InstallInstructionScriptInputSchema.json @@ -19,11 +19,6 @@ // az rest --resource -u "{URL}" --output-file {FILENAME} "type": "boolean" }, - "downloadUrlPrefix": { - // All the artifacts will be uploaded and user could access the artifact via - // a link composed by this prefix and artifact filename. - "type": "string" - }, "downloadCommandTemplate": { // Download command template. Replace {URL} and {FILENAME} to get the real command. "type": "string" diff --git a/documentation/sdkautomation/README.md b/documentation/sdkautomation/README.md index 667b1d306688..f87cbaa44556 100644 --- a/documentation/sdkautomation/README.md +++ b/documentation/sdkautomation/README.md @@ -26,9 +26,9 @@ SDK Automation is launched with matrix in azure pipeline. For each language conf - repo: azure-sdk-for-js ``` ``` - 2. For TypeSpec PR, filter the list of tspconfig.yaml: find the `options` config in tspconfig.yaml, and see if the specified language is configure for that tsp-location.yaml. + 2. For TypeSpec PR, filter the list of tspconfig.yaml: find the `options` config in tspconfig.yaml, and see if the specified language emitter is configured. - If the configured language is not found here, generation for this typespec project will be skipped. + If the specific language is not configured here, generation for this typespec project will be skipped. 4. Get `specificationRepositoryConfiguration.json` from spec repo default branch. See [SpecRepoConfig](#specrepoconfig). Get the repo and branch config in the file. @@ -46,19 +46,17 @@ SDK Automation is launched with matrix in azure pipeline. For each language conf 11. Launch __buildScript__ to build the package. Collect the artifacts by config __artifactPathFromFileSearch__. This step could be skipped if it's not defined in [SwaggerToSdkConfig](#swaggertosdkconfig) and it's covered by __generateScript__ and the result could be found in [generateOutput.json](#generateoutput). -12. Upload all the package related artifacts to Azure Storage Blob Container. All the artifact for one package is uploaded in one folder. These file could be downloaded on URL prefixed by __downloadUrlPrefix__ defined in [InstallInstructionScriptInput](#installinstructionscriptinput). It's redirected by openapiHub by design, and for SDK Automation on public repo the redirect don't need auth, but for SDK Automation in private repo it requires microsoft AAD auth. User could authenticate and download via web page oauth in browser or bearer token auth with `az rest --resource` in command line. +12. Launch __changelogScript__ to get changelog and detect breaking change. This step could be skipped if changelog and breaking change could be found in [generateOutput.json](#generateoutput). If breaking change is found, the spec PR will be labelled with `BreakingChange--Sdk`. -13. Launch __changelogScript__ to get changelog and detect breaking change. This step could be skipped if changelog and breaking change could be found in [generateOutput.json](#generateoutput). If breaking change is found, the spec PR will be labelled with `CI-BreakingChange-`. +13. Launch __installInstructionScript__ to get install instruction for that package. This step could be skipped if install instruction could be found in [generateOutput.json](#generateoutput). The lite install instruction will be shown in spec PR comment, the full install instruction will be shown in generated SDK PR. -14. Launch __installInstructionScript__ to get install instruction for that package. This step could be skipped if install instruction could be found in [generateOutput.json](#generateoutput). The lite install instruction will be shown in spec PR comment, the full install instruction will be shown in generated SDK PR. - -15. Commit the package related code in SDK repository. Force push to [GenerationBranch](#generationbranch) in __integrationRepository__. Create or update [GenerationPR](#generationpr) from [GenerationBranch](#generationbranch) to [MainBranch](#mainbranch) in __integrationRepository__. If __integrationRepository__ is a fork of __mainRepository__, its [MainBranch](#mainbranch) should be synced once a day. +14. Commit the package related code in SDK repository. Force push to [GenerationBranch](#generationbranch) in __integrationRepository__. Create or update [GenerationPR](#generationpr) from [GenerationBranch](#generationbranch) to [MainBranch](#mainbranch) in __integrationRepository__. If __integrationRepository__ is a fork of __mainRepository__, its [MainBranch](#mainbranch) should be synced once a day. ### Continuous Integration (PR Merged) Trigger -Almost the same as opened PR trigger, with different on step 15: +Almost the same as opened PR trigger, with different on step 14: -15. Commit the package related code in SDK repository. Close [GenerationPR](#generationpr) and delete [GenerationBranch](#generationbranch). Force push to [IntegrationBranch](#integrationbranch) in __integrationRepository__. Create or update [IntegrationPR](#integrationpr) from [IntegrationBranch](#integrationbranch) to [MainBranch](#mainbranch) in __mainRepository__. Close the [integrationPR](#integrationPR) if __closeIntegrationPR__ in [SwaggerToSdkConfig](#swaggertosdkconfig) is set to true. +14. Commit the package related code in SDK repository. Close [GenerationPR](#generationpr) and delete [GenerationBranch](#generationbranch). Force push to [IntegrationBranch](#integrationbranch) in __integrationRepository__. Create or update [IntegrationPR](#integrationpr) from [IntegrationBranch](#integrationbranch) to [MainBranch](#mainbranch) in __mainRepository__. Close the [integrationPR](#integrationPR) if __closeIntegrationPR__ in [SwaggerToSdkConfig](#swaggertosdkconfig) is set to true. ## Definitions @@ -78,16 +76,6 @@ This is type of file `./specificationRepositoryConfiguration.json` in swagger sp "integrationRepository": "AzureSDKAutomation/azure-sdk-for-python", "mainRepository": "Azure/azure-sdk-for-python", "mainBranch": "release/v3" - }, - "azure-sdk-for-python-track2": { - "integrationRepository": "AzureSDKAutomation/azure-sdk-for-python", - "mainRepository": "Azure/azure-sdk-for-python" - }, - "azure-sdk-for-trenton": { - "integrationRepository": "Azure/azure-sdk-for-trenton", - "mainRepository": "Azure/azure-sdk-for-trenton", - "secondaryRepository": "Azure/azure-sdk-for-trenton", - "secondaryBranch": "secondary" } }, "overrides": { @@ -101,10 +89,6 @@ This is type of file `./specificationRepositoryConfiguration.json` in swagger sp "integrationRepository": "azure-sdk/azure-sdk-for-python-pr", "mainRepository": "Azure/azure-sdk-for-python-pr", "mainBranch": "release/v3" - }, - "azure-sdk-for-python-track2": { - "integrationRepository": "azure-sdk/azure-sdk-for-python-pr", - "mainRepository": "Azure/azure-sdk-for-python-pr" } } } @@ -175,7 +159,7 @@ The working folder of all the scripts is the __root folder of sdk repo__. "breakingChangeDetect": "Breaking Change" }, - "breakingChangeLabel": "CI-BreakingChange-DotNet" + "breakingChangesLabel": "BreakingChange-DotNet-Sdk" }, "artifactOptions": { // Param: @@ -214,7 +198,6 @@ Input file for generate script. ], "installInstructionInput": { "isPublic": false, - "downloadUrlPrefix": "https://openapihub.test.azure-devex-tools.com/api/sdk-dl-pub?p=Azure/1234/azure-sdk-for-net/", "downloadCommandTemplate": "curl -L \"{URL}\" -o {FILENAME}", "trigger": "pullRequest" } @@ -278,7 +261,6 @@ Input of install instruction script. "sdk/cdn/cdn.snuget" ], "isPublic": true, - "downloadUrlPrefix": "https://portal.azure-devex-tools.com/api/sdk-dl-pub?p=Azure/azure-rest-api-specs/1234/azure-sdk-for-net/", "downloadCommandTemplate": "curl -L \"{URL}\" -o {FILENAME}", "trigger": "pullRequest", } diff --git a/documentation/sdkautomation/SwaggerToSdkConfigSchema.json b/documentation/sdkautomation/SwaggerToSdkConfigSchema.json index b9c73b0d9cec..31a1a7c1b3f5 100644 --- a/documentation/sdkautomation/SwaggerToSdkConfigSchema.json +++ b/documentation/sdkautomation/SwaggerToSdkConfigSchema.json @@ -149,7 +149,7 @@ } } }, - "breakingChangeLabel": { + "breakingChangesLabel": { // Label to be added in spec PR if breaking change is found "type": "string" } From f28f14c35918513bd3c3cf9f30d31ee192602525 Mon Sep 17 00:00:00 2001 From: Almas Khan <162407742+almasak@users.noreply.github.com> Date: Mon, 24 Jun 2024 17:01:52 +0530 Subject: [PATCH 10/52] Make "marketplaceSubscriptionId" an optional field for "MarketplaceDetails" (#29541) --- specification/informatica/Informatica.DataManagement/main.tsp | 2 +- .../Informatica.DataManagement/stable/2024-05-08/openapi.json | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/informatica/Informatica.DataManagement/main.tsp b/specification/informatica/Informatica.DataManagement/main.tsp index 5d4910d75a44..086574ad2a0d 100644 --- a/specification/informatica/Informatica.DataManagement/main.tsp +++ b/specification/informatica/Informatica.DataManagement/main.tsp @@ -303,7 +303,7 @@ model CompanyDetails { @doc("Marketplace details.") model MarketplaceDetails { @doc("Marketplace Subscription Id") - marketplaceSubscriptionId: string; + marketplaceSubscriptionId?: string; @doc("Marketplace offer details.") offerDetails: OfferDetails; diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/openapi.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/openapi.json index 8ef8c019e494..75f73e977db1 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/openapi.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/openapi.json @@ -1594,7 +1594,6 @@ } }, "required": [ - "marketplaceSubscriptionId", "offerDetails" ] }, From 710e53caaa5ac6747e597b5e411ea403fee1c211 Mon Sep 17 00:00:00 2001 From: Badea Marjieh <127952241+badeamarjieh@users.noreply.github.com> Date: Mon, 24 Jun 2024 19:30:14 +0300 Subject: [PATCH 11/52] Introduce Microsoft Fabric ARM Rest APIs (#29355) * 2023-11-01 * . * fix json file name * update resume and suspend operations * update examples of resume and suspend * fixed json format * resolve comments * . * . * . * update description * updating State model to ResourceState * fix comments --- .../Microsoft.Fabric.Management/capacity.tsp | 69 ++ ...abricCapacities_CheckNameAvailability.json | 20 + .../FabricCapacities_CreateOrUpdate.json | 85 ++ .../2023-11-01/FabricCapacities_Delete.json | 14 + .../2023-11-01/FabricCapacities_Get.json | 35 + .../FabricCapacities_ListByResourceGroup.json | 59 + .../FabricCapacities_ListBySubscription.json | 58 + .../2023-11-01/FabricCapacities_ListSkus.json | 44 + .../FabricCapacities_ListSkusForCapacity.json | 95 ++ .../2023-11-01/FabricCapacities_Resume.json | 18 + .../2023-11-01/FabricCapacities_Suspend.json | 18 + .../2023-11-01/FabricCapacities_Update.json | 52 + .../examples/2023-11-01/Operations_List.json | 65 + .../Microsoft.Fabric.Management/main.tsp | 29 + .../Microsoft.Fabric.Management/models.tsp | 168 +++ .../tspconfig.yaml | 12 + ...abricCapacities_CheckNameAvailability.json | 20 + .../FabricCapacities_CreateOrUpdate.json | 85 ++ .../examples/FabricCapacities_Delete.json | 14 + .../examples/FabricCapacities_Get.json | 35 + .../FabricCapacities_ListByResourceGroup.json | 59 + .../FabricCapacities_ListBySubscription.json | 58 + .../examples/FabricCapacities_ListSkus.json | 44 + .../FabricCapacities_ListSkusForCapacity.json | 95 ++ .../examples/FabricCapacities_Resume.json | 18 + .../examples/FabricCapacities_Suspend.json | 18 + .../examples/FabricCapacities_Update.json | 52 + .../2023-11-01/examples/Operations_List.json | 65 + .../stable/2023-11-01/fabric.json | 1088 +++++++++++++++++ .../fabric/resource-manager/readme.az.md | 28 + .../fabric/resource-manager/readme.cli.md | 1 + .../fabric/resource-manager/readme.csharp.md | 15 + .../fabric/resource-manager/readme.go.md | 11 + .../fabric/resource-manager/readme.md | 78 ++ .../fabric/resource-manager/readme.python.md | 20 + .../resource-manager/readme.typescript.md | 14 + 36 files changed, 2659 insertions(+) create mode 100644 specification/fabric/Microsoft.Fabric.Management/capacity.tsp create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_CheckNameAvailability.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_CreateOrUpdate.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Delete.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Get.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListByResourceGroup.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListBySubscription.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListSkus.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListSkusForCapacity.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Resume.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Suspend.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Update.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/Operations_List.json create mode 100644 specification/fabric/Microsoft.Fabric.Management/main.tsp create mode 100644 specification/fabric/Microsoft.Fabric.Management/models.tsp create mode 100644 specification/fabric/Microsoft.Fabric.Management/tspconfig.yaml create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_CheckNameAvailability.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_CreateOrUpdate.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Delete.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Get.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListByResourceGroup.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListBySubscription.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListSkus.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListSkusForCapacity.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Resume.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Suspend.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Update.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/Operations_List.json create mode 100644 specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/fabric.json create mode 100644 specification/fabric/resource-manager/readme.az.md create mode 100644 specification/fabric/resource-manager/readme.cli.md create mode 100644 specification/fabric/resource-manager/readme.csharp.md create mode 100644 specification/fabric/resource-manager/readme.go.md create mode 100644 specification/fabric/resource-manager/readme.md create mode 100644 specification/fabric/resource-manager/readme.python.md create mode 100644 specification/fabric/resource-manager/readme.typescript.md diff --git a/specification/fabric/Microsoft.Fabric.Management/capacity.tsp b/specification/fabric/Microsoft.Fabric.Management/capacity.tsp new file mode 100644 index 000000000000..0f44dbf03559 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/capacity.tsp @@ -0,0 +1,69 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "./models.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using Azure.Core; +using Azure.ResourceManager; + +namespace Microsoft.Fabric; + +/** Fabric Capacity resource */ +model FabricCapacity is TrackedResource { + @doc("The name of the Microsoft Fabric capacity. It must be a minimum of 3 characters, and a maximum of 63.") + @maxLength(63) + @minLength(3) + @pattern("^[a-z][a-z0-9]*$") + @key("capacityName") + @path + @segment("capacities") + @visibility("read") + name: string; + + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "The standard ResourceSkuProperty does not fit our case" + @doc("The SKU details") + sku: RpSku; +} + +@armResourceOperations +interface FabricCapacities { + get is ArmResourceRead; + createOrUpdate is ArmResourceCreateOrReplaceAsync; + update is ArmResourcePatchSync; + delete is ArmResourceDeleteSync; + listByResourceGroup is ArmResourceListByParent; + listBySubscription is ArmListBySubscription; + + @doc("Resume operation of the specified Fabric capacity instance.") + resume is ArmResourceActionNoResponseContentAsync; + + @doc("Suspend operation of the specified Fabric capacity instance.") + suspend is ArmResourceActionNoResponseContentAsync; + + checkNameAvailability is checkLocalNameAvailability; + + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" "" + @get + @doc("List eligible SKUs for a Microsoft Fabric resource") + @segment("skus") + listSkusForCapacity( + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...ResourceGroupParameter, + ...Azure.ResourceManager.Foundations.DefaultProviderNamespace, + ...CapacityNameParameter, + ): RpSkuEnumerationForExistingResourceResult | ErrorResponse; + + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" "" + @get + @doc("List eligible SKUs for Microsoft Fabric resource provider") + @segment("skus") + listSkus( + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...Azure.ResourceManager.Foundations.DefaultProviderNamespace, + ): RpSkuEnumerationForNewResourceResult | ErrorResponse; +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_CheckNameAvailability.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_CheckNameAvailability.json new file mode 100644 index 000000000000..e36fd699e1a3 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "title": "Check name availability of a capacity", + "operationId": "FabricCapacities_CheckNameAvailability", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "location": "westcentralus", + "body": { + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_CreateOrUpdate.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_CreateOrUpdate.json new file mode 100644 index 000000000000..568d4dcaa4d4 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_CreateOrUpdate.json @@ -0,0 +1,85 @@ +{ + "title": "Create or update a capacity", + "operationId": "FabricCapacities_CreateOrUpdate", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest", + "resource": { + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "headers": { + "Location": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationresults/946B9C42-0D6C-4A42-94AE-1156A1EC8534?api-version=2023-11-01&t=638525901413778740&c=MIIH5zCCBs-", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationstatuses/946B9C42-0D6C-4A42-94AE-1156A1EC8534?api-version=2023-11-01&t=638525901413778740&c=MIIH5zCCBs-" + }, + "body": { + "properties": { + "provisioningState": "Updating", + "state": "Preparing", + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "westcentralus", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + }, + "201": { + "headers": { + "Location": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationresults/946B9C42-0D6C-4A42-94AE-1156A1EC8534?api-version=2023-11-01&t=638525901413778740&c=MIIH5zCCBs-", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationstatuses/946B9C42-0D6C-4A42-94AE-1156A1EC8534?api-version=2023-11-01&t=638525901413778740&c=MIIH5zCCBs-" + }, + "body": { + "properties": { + "provisioningState": "Provisioning", + "state": "Provisioning", + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "westcentralus", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Delete.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Delete.json new file mode 100644 index 000000000000..decf9a4809f8 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Delete.json @@ -0,0 +1,14 @@ +{ + "title": "Delete a capacity", + "operationId": "FabricCapacities_Delete", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Get.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Get.json new file mode 100644 index 000000000000..c0d412381579 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Get.json @@ -0,0 +1,35 @@ +{ + "title": "Get a capacity", + "operationId": "FabricCapacities_Get", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "state": "Active", + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": {}, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListByResourceGroup.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListByResourceGroup.json new file mode 100644 index 000000000000..81f1a5643711 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListByResourceGroup.json @@ -0,0 +1,59 @@ +{ + "title": "List capacities by resource group", + "operationId": "FabricCapacities_ListByResourceGroup", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "state": "Active", + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": {}, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + }, + { + "properties": { + "provisioningState": "Provisioning", + "state": "Provisioning", + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + } + }, + "sku": { + "name": "F4", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest2", + "name": "azsdktest2", + "type": "Microsoft.Fabric/capacities" + } + ] + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListBySubscription.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListBySubscription.json new file mode 100644 index 000000000000..64fed8b9cf88 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListBySubscription.json @@ -0,0 +1,58 @@ +{ + "title": "List capacities by subscription", + "operationId": "FabricCapacities_ListBySubscription", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "state": "Active", + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": {}, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + }, + { + "properties": { + "provisioningState": "Provisioning", + "state": "Provisioning", + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + } + }, + "sku": { + "name": "F4", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest2", + "name": "azsdktest2", + "type": "Microsoft.Fabric/capacities" + } + ] + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListSkus.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListSkus.json new file mode 100644 index 000000000000..157513675f2f --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListSkus.json @@ -0,0 +1,44 @@ +{ + "title": "List eligible SKUs for a new capacity", + "operationId": "FabricCapacities_ListSkus", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "F8", + "locations": [ + "West Europe" + ], + "resourceType": "Capacities" + }, + { + "name": "F64", + "locations": [ + "West Europe" + ], + "resourceType": "Capacities" + }, + { + "name": "F128", + "locations": [ + "West Europe" + ], + "resourceType": "Capacities" + }, + { + "name": "F512", + "locations": [ + "West Europe" + ], + "resourceType": "Capacities" + } + ] + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListSkusForCapacity.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListSkusForCapacity.json new file mode 100644 index 000000000000..6217e0eb1cab --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_ListSkusForCapacity.json @@ -0,0 +1,95 @@ +{ + "title": "List eligible SKUs for an existing capacity", + "operationId": "FabricCapacities_ListSkusForCapacity", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F16", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F8", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F64", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F1024", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F128", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F2", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F256", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F32", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F4", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F512", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F2048", + "tier": "Fabric" + } + } + ] + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Resume.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Resume.json new file mode 100644 index 000000000000..ec90eb13207e --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Resume.json @@ -0,0 +1,18 @@ +{ + "title": "Resume capacity", + "operationId": "FabricCapacities_Resume", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationstatuses/82494E97-958D-4BFF-92F1-297BB0D9F2D7?api-version=2023-11-01&t=638525947760837928&c=MIIH5zCCBs-", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationresults/82494E97-958D-4BFF-92F1-297BB0D9F2D7?api-version=2023-11-01&t=638525947760994159&c=MIIH5zCCBs-" + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Suspend.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Suspend.json new file mode 100644 index 000000000000..7507ad604a2f --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Suspend.json @@ -0,0 +1,18 @@ +{ + "title": "Suspend capacity", + "operationId": "FabricCapacities_Suspend", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationstatuses/82494E97-958D-4BFF-92F1-297BB0D9F2D7?api-version=2023-11-01&t=638525947760837928&c=MIIH5zCCBs-", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationresults/82494E97-958D-4BFF-92F1-297BB0D9F2D7?api-version=2023-11-01&t=638525947760994159&c=MIIH5zCCBs-" + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Update.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Update.json new file mode 100644 index 000000000000..0dbbee872b7c --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/FabricCapacities_Update.json @@ -0,0 +1,52 @@ +{ + "title": "Update capacity properties", + "operationId": "FabricCapacities_Update", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest", + "properties": { + "sku": { + "name": "F8", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "properties": { + "administration": { + "members": [ + "azsdktest2@microsoft.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Provisioning", + "state": "Provisioning", + "administration": { + "members": [ + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F8", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "westcentralus", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/Operations_List.json b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/Operations_List.json new file mode 100644 index 000000000000..94865fd32c2e --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/examples/2023-11-01/Operations_List.json @@ -0,0 +1,65 @@ +{ + "title": "List operations", + "operationId": "Operations_List", + "parameters": { + "api-version": "2023-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Fabric/capacities/read", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Read Fabric Capacity", + "description": "Retrieves the information of the specified Fabric Capacity." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Fabric/capacities/write", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Create/Update Fabric Capacity", + "description": "Creates or updates the specified Fabric Capacity." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Fabric/capacities/delete", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Delete the Fabric Capacity", + "description": "Deletes the Fabric Capacity." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Fabric/capacities/suspend/action", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Suspend the specified Fabric capacity", + "description": "Suspend the specified Fabric capacity" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Fabric/capacities/resume/action", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Resume the specified Fabric capacity", + "description": "Resume the specified Fabric capacity" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/fabric/Microsoft.Fabric.Management/main.tsp b/specification/fabric/Microsoft.Fabric.Management/main.tsp new file mode 100644 index 000000000000..f8d6e9530c2b --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/main.tsp @@ -0,0 +1,29 @@ +import "@typespec/http"; +import "@typespec/rest"; +import "@typespec/versioning"; +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "./capacity.tsp"; + +using TypeSpec.Http; +using TypeSpec.Rest; +using TypeSpec.Versioning; +using Azure.Core; +using Azure.ResourceManager; + +/** Microsoft.Fabric Resource Provider management API. */ +@armProviderNamespace +@service({ + title: "Microsoft.Fabric management service", +}) +@versioned(Microsoft.Fabric.Versions) +namespace Microsoft.Fabric; + +/** The available API versions. */ +enum Versions { + /** 2023-11-01 version */ + @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + @armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v5) + v2023_11_01: "2023-11-01", +} diff --git a/specification/fabric/Microsoft.Fabric.Management/models.tsp b/specification/fabric/Microsoft.Fabric.Management/models.tsp new file mode 100644 index 000000000000..eed2e67465b5 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/models.tsp @@ -0,0 +1,168 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@azure-tools/typespec-azure-core"; + +using TypeSpec.Http; +using Azure.Core; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using OpenAPI; + +namespace Microsoft.Fabric; + +interface Operations extends Azure.ResourceManager.Operations {} + +@doc("The Microsoft Fabric capacity properties.") +model FabricCapacityProperties { + @doc("The current deployment state of Microsoft Fabric resource. The provisioningState is to indicate states for resource provisioning.") + @visibility("read") + provisioningState?: ProvisioningState; + + @doc("The current state of Microsoft Fabric resource. The state is to indicate more states outside of resource provisioning.") + @visibility("read") + state: ResourceState; + + @doc("The capacity administration") + administration: CapacityAdministration; +} + +@doc("Represents the SKU name and Azure pricing tier for Microsoft Fabric capacity resource.") +model RpSku { + @doc("The name of the SKU level.") + name: string; + + @doc("The name of the Azure pricing tier to which the SKU applies.") + tier: RpSkuTier; +} + +@doc("The name of the Azure pricing tier to which the SKU applies.") +union RpSkuTier { + string, + + @doc("Fabric tier") + fabric: "Fabric", +} + +@doc("The administration properties of the Fabric capacity resource") +model CapacityAdministration { + @doc("An array of administrator user identities.") + members: Array; +} + +@doc("The provisioning state of the Fabric capacity resource.") +union ProvisioningState { + ResourceProvisioningState, + + /** Resource is deleting */ + Deleting: "Deleting", + + /** Resource is provisioning */ + Provisioning: "Provisioning", + + /** Resource is updating */ + Updating: "Updating", + + string, +} + +@doc("The state of the Fabric capacity resource.") +union ResourceState { + /** Resource is active */ + Active: "Active", + + /** Resource is provisioning */ + Provisioning: "Provisioning", + + /** Resource is failed */ + Failed: "Failed", + + /** Resource is updating */ + Updating: "Updating", + + /** Resource is deleting */ + Deleting: "Deleting", + + /** Resource is suspending */ + Suspending: "Suspending", + + /** Resource is suspended */ + Suspended: "Suspended", + + /** Resource is pausing */ + Pausing: "Pausing", + + /** Resource is paused */ + Paused: "Paused", + + /** Resource is resuming */ + Resuming: "Resuming", + + /** Resource is scaling */ + Scaling: "Scaling", + + /** Resource is preparing */ + Preparing: "Preparing", + + string, +} + +@doc("An object that represents enumerating SKUs for new resources.") +@pagedResult +model RpSkuEnumerationForNewResourceResult { + #suppress "@azure-tools/typespec-azure-resource-manager/missing-x-ms-identifiers" "" + @doc("The collection of available SKUs for new resources") + value: Array; + + @doc("Url for the next page. Null if no more pages available") + @nextLink + nextLink?: string; +} + +@doc("The SKU details") +model RpSkuDetailsForNewResource { + @doc("The resource type") + resourceType: string; + + ...RpSkuProperties; +} + +@doc("The SKU properties") +model RpSkuProperties { + @doc("The SKU's name") + name: string; + + @doc("The list of available locations for the SKU") + locations: Array; +} + +@doc("An object that represents enumerating SKUs for existing resources") +@pagedResult +model RpSkuEnumerationForExistingResourceResult { + #suppress "@azure-tools/typespec-azure-resource-manager/missing-x-ms-identifiers" "" + @doc("The SKU details") + value: Array; + + @doc("Url for the next page. Null if no more pages available") + @nextLink + nextLink?: string; +} + +@doc("An object that represents SKU details for existing resources") +model RpSkuDetailsForExistingResource { + @doc("The resource type") + resourceType: string; + + @doc("The SKU details") + sku: RpSku; +} + +@doc("The name of the capacity.") +model CapacityNameParameter { + @doc("The name of the capacity.") + @maxLength(63) + @minLength(3) + @pattern("^[a-z][a-z0-9]*$") + @TypeSpec.Rest.segment("capacities") + @path + capacityName: string; +} diff --git a/specification/fabric/Microsoft.Fabric.Management/tspconfig.yaml b/specification/fabric/Microsoft.Fabric.Management/tspconfig.yaml new file mode 100644 index 000000000000..b5074dd778f1 --- /dev/null +++ b/specification/fabric/Microsoft.Fabric.Management/tspconfig.yaml @@ -0,0 +1,12 @@ +emit: + - "@azure-tools/typespec-autorest" +options: + "@azure-tools/typespec-autorest": + use-read-only-status-schema: true + emitter-output-dir: "{project-root}/.." + azure-resource-provider-folder: "resource-manager" + output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/fabric.json" + examples-directory: "{project-root}/examples" +linter: + extends: + - "@azure-tools/typespec-azure-rulesets/resource-manager" diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_CheckNameAvailability.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_CheckNameAvailability.json new file mode 100644 index 000000000000..e36fd699e1a3 --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "title": "Check name availability of a capacity", + "operationId": "FabricCapacities_CheckNameAvailability", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "location": "westcentralus", + "body": { + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_CreateOrUpdate.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_CreateOrUpdate.json new file mode 100644 index 000000000000..568d4dcaa4d4 --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_CreateOrUpdate.json @@ -0,0 +1,85 @@ +{ + "title": "Create or update a capacity", + "operationId": "FabricCapacities_CreateOrUpdate", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest", + "resource": { + "properties": { + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "headers": { + "Location": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationresults/946B9C42-0D6C-4A42-94AE-1156A1EC8534?api-version=2023-11-01&t=638525901413778740&c=MIIH5zCCBs-", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationstatuses/946B9C42-0D6C-4A42-94AE-1156A1EC8534?api-version=2023-11-01&t=638525901413778740&c=MIIH5zCCBs-" + }, + "body": { + "properties": { + "provisioningState": "Updating", + "state": "Preparing", + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "westcentralus", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + }, + "201": { + "headers": { + "Location": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationresults/946B9C42-0D6C-4A42-94AE-1156A1EC8534?api-version=2023-11-01&t=638525901413778740&c=MIIH5zCCBs-", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationstatuses/946B9C42-0D6C-4A42-94AE-1156A1EC8534?api-version=2023-11-01&t=638525901413778740&c=MIIH5zCCBs-" + }, + "body": { + "properties": { + "provisioningState": "Provisioning", + "state": "Provisioning", + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "westcentralus", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Delete.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Delete.json new file mode 100644 index 000000000000..decf9a4809f8 --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Delete.json @@ -0,0 +1,14 @@ +{ + "title": "Delete a capacity", + "operationId": "FabricCapacities_Delete", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Get.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Get.json new file mode 100644 index 000000000000..c0d412381579 --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Get.json @@ -0,0 +1,35 @@ +{ + "title": "Get a capacity", + "operationId": "FabricCapacities_Get", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "state": "Active", + "administration": { + "members": [ + "azsdktest@microsoft.com", + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": {}, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListByResourceGroup.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListByResourceGroup.json new file mode 100644 index 000000000000..81f1a5643711 --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListByResourceGroup.json @@ -0,0 +1,59 @@ +{ + "title": "List capacities by resource group", + "operationId": "FabricCapacities_ListByResourceGroup", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "state": "Active", + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": {}, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + }, + { + "properties": { + "provisioningState": "Provisioning", + "state": "Provisioning", + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + } + }, + "sku": { + "name": "F4", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest2", + "name": "azsdktest2", + "type": "Microsoft.Fabric/capacities" + } + ] + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListBySubscription.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListBySubscription.json new file mode 100644 index 000000000000..64fed8b9cf88 --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListBySubscription.json @@ -0,0 +1,58 @@ +{ + "title": "List capacities by subscription", + "operationId": "FabricCapacities_ListBySubscription", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "state": "Active", + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + } + }, + "sku": { + "name": "F2", + "tier": "Fabric" + }, + "tags": {}, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + }, + { + "properties": { + "provisioningState": "Provisioning", + "state": "Provisioning", + "administration": { + "members": [ + "azsdktest@microsoft.com" + ] + } + }, + "sku": { + "name": "F4", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "West Central US", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest2", + "name": "azsdktest2", + "type": "Microsoft.Fabric/capacities" + } + ] + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListSkus.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListSkus.json new file mode 100644 index 000000000000..157513675f2f --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListSkus.json @@ -0,0 +1,44 @@ +{ + "title": "List eligible SKUs for a new capacity", + "operationId": "FabricCapacities_ListSkus", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "F8", + "locations": [ + "West Europe" + ], + "resourceType": "Capacities" + }, + { + "name": "F64", + "locations": [ + "West Europe" + ], + "resourceType": "Capacities" + }, + { + "name": "F128", + "locations": [ + "West Europe" + ], + "resourceType": "Capacities" + }, + { + "name": "F512", + "locations": [ + "West Europe" + ], + "resourceType": "Capacities" + } + ] + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListSkusForCapacity.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListSkusForCapacity.json new file mode 100644 index 000000000000..6217e0eb1cab --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_ListSkusForCapacity.json @@ -0,0 +1,95 @@ +{ + "title": "List eligible SKUs for an existing capacity", + "operationId": "FabricCapacities_ListSkusForCapacity", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F16", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F8", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F64", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F1024", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F128", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F2", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F256", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F32", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F4", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F512", + "tier": "Fabric" + } + }, + { + "resourceType": "Microsoft.Fabric/capacities", + "sku": { + "name": "F2048", + "tier": "Fabric" + } + } + ] + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Resume.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Resume.json new file mode 100644 index 000000000000..ec90eb13207e --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Resume.json @@ -0,0 +1,18 @@ +{ + "title": "Resume capacity", + "operationId": "FabricCapacities_Resume", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationstatuses/82494E97-958D-4BFF-92F1-297BB0D9F2D7?api-version=2023-11-01&t=638525947760837928&c=MIIH5zCCBs-", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationresults/82494E97-958D-4BFF-92F1-297BB0D9F2D7?api-version=2023-11-01&t=638525947760994159&c=MIIH5zCCBs-" + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Suspend.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Suspend.json new file mode 100644 index 000000000000..7507ad604a2f --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Suspend.json @@ -0,0 +1,18 @@ +{ + "title": "Suspend capacity", + "operationId": "FabricCapacities_Suspend", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationstatuses/82494E97-958D-4BFF-92F1-297BB0D9F2D7?api-version=2023-11-01&t=638525947760837928&c=MIIH5zCCBs-", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/providers/Microsoft.Fabric/locations/westcentralus/operationresults/82494E97-958D-4BFF-92F1-297BB0D9F2D7?api-version=2023-11-01&t=638525947760994159&c=MIIH5zCCBs-" + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Update.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Update.json new file mode 100644 index 000000000000..0dbbee872b7c --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/FabricCapacities_Update.json @@ -0,0 +1,52 @@ +{ + "title": "Update capacity properties", + "operationId": "FabricCapacities_Update", + "parameters": { + "api-version": "2023-11-01", + "subscriptionId": "548B7FB7-3B2A-4F46-BB02-66473F1FC22C", + "resourceGroupName": "TestRG", + "capacityName": "azsdktest", + "properties": { + "sku": { + "name": "F8", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "properties": { + "administration": { + "members": [ + "azsdktest2@microsoft.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Provisioning", + "state": "Provisioning", + "administration": { + "members": [ + "azsdktest2@microsoft.com" + ] + } + }, + "sku": { + "name": "F8", + "tier": "Fabric" + }, + "tags": { + "testKey": "testValue" + }, + "location": "westcentralus", + "id": "/subscriptions/548B7FB7-3B2A-4F46-BB02-66473F1FC22C/resourceGroups/TestRG/providers/Microsoft.Fabric/capacities/azsdktest", + "name": "azsdktest", + "type": "Microsoft.Fabric/capacities" + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/Operations_List.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/Operations_List.json new file mode 100644 index 000000000000..94865fd32c2e --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/examples/Operations_List.json @@ -0,0 +1,65 @@ +{ + "title": "List operations", + "operationId": "Operations_List", + "parameters": { + "api-version": "2023-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Fabric/capacities/read", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Read Fabric Capacity", + "description": "Retrieves the information of the specified Fabric Capacity." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Fabric/capacities/write", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Create/Update Fabric Capacity", + "description": "Creates or updates the specified Fabric Capacity." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Fabric/capacities/delete", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Delete the Fabric Capacity", + "description": "Deletes the Fabric Capacity." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Fabric/capacities/suspend/action", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Suspend the specified Fabric capacity", + "description": "Suspend the specified Fabric capacity" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Fabric/capacities/resume/action", + "display": { + "provider": "Microsoft Fabric", + "resource": "capacities", + "operation": "Resume the specified Fabric capacity", + "description": "Resume the specified Fabric capacity" + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/fabric.json b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/fabric.json new file mode 100644 index 000000000000..eb8d87cc9837 --- /dev/null +++ b/specification/fabric/resource-manager/Microsoft.Fabric/stable/2023-11-01/fabric.json @@ -0,0 +1,1088 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft.Fabric management service", + "version": "2023-11-01", + "description": "Microsoft.Fabric Resource Provider management API.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "tags": [ + { + "name": "FabricCapacities" + }, + { + "name": "Operations" + } + ], + "paths": { + "/providers/Microsoft.Fabric/operations": { + "get": { + "operationId": "Operations_List", + "tags": [ + "Operations" + ], + "description": "List the operations for the provider", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List operations": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Fabric/capacities": { + "get": { + "operationId": "FabricCapacities_ListBySubscription", + "tags": [ + "FabricCapacities" + ], + "description": "List FabricCapacity resources by subscription ID", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/FabricCapacityListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List capacities by subscription": { + "$ref": "./examples/FabricCapacities_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Fabric/locations/{location}/checkNameAvailability": { + "post": { + "operationId": "FabricCapacities_CheckNameAvailability", + "tags": [ + "FabricCapacities" + ], + "description": "Implements local CheckNameAvailability operations", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter" + }, + { + "name": "body", + "in": "body", + "description": "The CheckAvailability request", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check name availability of a capacity": { + "$ref": "./examples/FabricCapacities_CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Fabric/skus": { + "get": { + "operationId": "FabricCapacities_ListSkus", + "tags": [ + "FabricCapacities" + ], + "description": "List eligible SKUs for Microsoft Fabric resource provider", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/RpSkuEnumerationForNewResourceResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List eligible SKUs for a new capacity": { + "$ref": "./examples/FabricCapacities_ListSkus.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric/capacities": { + "get": { + "operationId": "FabricCapacities_ListByResourceGroup", + "tags": [ + "FabricCapacities" + ], + "description": "List FabricCapacity resources by resource group", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/FabricCapacityListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List capacities by resource group": { + "$ref": "./examples/FabricCapacities_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric/capacities/{capacityName}": { + "get": { + "operationId": "FabricCapacities_Get", + "tags": [ + "FabricCapacities" + ], + "description": "Get a FabricCapacity", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "capacityName", + "in": "path", + "description": "The name of the Microsoft Fabric capacity. It must be a minimum of 3 characters, and a maximum of 63.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 63, + "pattern": "^[a-z][a-z0-9]*$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/FabricCapacity" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a capacity": { + "$ref": "./examples/FabricCapacities_Get.json" + } + } + }, + "put": { + "operationId": "FabricCapacities_CreateOrUpdate", + "tags": [ + "FabricCapacities" + ], + "description": "Create a FabricCapacity", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "capacityName", + "in": "path", + "description": "The name of the Microsoft Fabric capacity. It must be a minimum of 3 characters, and a maximum of 63.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 63, + "pattern": "^[a-z][a-z0-9]*$" + }, + { + "name": "resource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/FabricCapacity" + } + } + ], + "responses": { + "200": { + "description": "Resource 'FabricCapacity' update operation succeeded", + "schema": { + "$ref": "#/definitions/FabricCapacity" + } + }, + "201": { + "description": "Resource 'FabricCapacity' create operation succeeded", + "schema": { + "$ref": "#/definitions/FabricCapacity" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a capacity": { + "$ref": "./examples/FabricCapacities_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-long-running-operation": true + }, + "patch": { + "operationId": "FabricCapacities_Update", + "tags": [ + "FabricCapacities" + ], + "description": "Update a FabricCapacity", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "capacityName", + "in": "path", + "description": "The name of the Microsoft Fabric capacity. It must be a minimum of 3 characters, and a maximum of 63.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 63, + "pattern": "^[a-z][a-z0-9]*$" + }, + { + "name": "properties", + "in": "body", + "description": "The resource properties to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/FabricCapacityUpdate" + } + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/FabricCapacity" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update capacity properties": { + "$ref": "./examples/FabricCapacities_Update.json" + } + } + }, + "delete": { + "operationId": "FabricCapacities_Delete", + "tags": [ + "FabricCapacities" + ], + "description": "Delete a FabricCapacity", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "capacityName", + "in": "path", + "description": "The name of the Microsoft Fabric capacity. It must be a minimum of 3 characters, and a maximum of 63.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 63, + "pattern": "^[a-z][a-z0-9]*$" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a capacity": { + "$ref": "./examples/FabricCapacities_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric/capacities/{capacityName}/resume": { + "post": { + "operationId": "FabricCapacities_Resume", + "tags": [ + "FabricCapacities" + ], + "description": "Resume operation of the specified Fabric capacity instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "capacityName", + "in": "path", + "description": "The name of the Microsoft Fabric capacity. It must be a minimum of 3 characters, and a maximum of 63.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 63, + "pattern": "^[a-z][a-z0-9]*$" + } + ], + "responses": { + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Resume capacity": { + "$ref": "./examples/FabricCapacities_Resume.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric/capacities/{capacityName}/skus": { + "get": { + "operationId": "FabricCapacities_ListSkusForCapacity", + "tags": [ + "FabricCapacities" + ], + "description": "List eligible SKUs for a Microsoft Fabric resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CapacityNameParameter" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/RpSkuEnumerationForExistingResourceResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List eligible SKUs for an existing capacity": { + "$ref": "./examples/FabricCapacities_ListSkusForCapacity.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric/capacities/{capacityName}/suspend": { + "post": { + "operationId": "FabricCapacities_Suspend", + "tags": [ + "FabricCapacities" + ], + "description": "Suspend operation of the specified Fabric capacity instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "capacityName", + "in": "path", + "description": "The name of the Microsoft Fabric capacity. It must be a minimum of 3 characters, and a maximum of 63.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 63, + "pattern": "^[a-z][a-z0-9]*$" + } + ], + "responses": { + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Suspend capacity": { + "$ref": "./examples/FabricCapacities_Suspend.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "Azure.Core.azureLocation": { + "type": "string", + "description": "Represents an Azure geography region where supported resource providers live." + }, + "CapacityAdministration": { + "type": "object", + "description": "The administration properties of the Fabric capacity resource", + "properties": { + "members": { + "type": "array", + "description": "An array of administrator user identities.", + "items": { + "type": "string" + } + } + }, + "required": [ + "members" + ] + }, + "CapacityAdministrationUpdate": { + "type": "object", + "description": "The administration properties of the Fabric capacity resource", + "properties": { + "members": { + "type": "array", + "description": "An array of administrator user identities.", + "items": { + "type": "string" + } + } + } + }, + "FabricCapacity": { + "type": "object", + "description": "Fabric Capacity resource", + "properties": { + "properties": { + "$ref": "#/definitions/FabricCapacityProperties", + "description": "The resource-specific properties for this resource.", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "#/definitions/RpSku", + "description": "The SKU details" + } + }, + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ] + }, + "FabricCapacityListResult": { + "type": "object", + "description": "The response of a FabricCapacity list operation.", + "properties": { + "value": { + "type": "array", + "description": "The FabricCapacity items on this page", + "items": { + "$ref": "#/definitions/FabricCapacity" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "FabricCapacityProperties": { + "type": "object", + "description": "The Microsoft Fabric capacity properties.", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The current deployment state of Microsoft Fabric resource. The provisioningState is to indicate states for resource provisioning.", + "readOnly": true + }, + "state": { + "$ref": "#/definitions/ResourceState", + "description": "The current state of Microsoft Fabric resource. The state is to indicate more states outside of resource provisioning.", + "readOnly": true + }, + "administration": { + "$ref": "#/definitions/CapacityAdministration", + "description": "The capacity administration" + } + }, + "required": [ + "state", + "administration" + ] + }, + "FabricCapacityUpdate": { + "type": "object", + "description": "The type used for update operations of the FabricCapacity.", + "properties": { + "sku": { + "$ref": "#/definitions/RpSkuUpdate", + "description": "The SKU details" + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/FabricCapacityUpdateProperties", + "x-ms-client-flatten": true + } + } + }, + "FabricCapacityUpdateProperties": { + "type": "object", + "description": "The updatable properties of the FabricCapacity.", + "properties": { + "administration": { + "$ref": "#/definitions/CapacityAdministrationUpdate", + "description": "The capacity administration" + } + } + }, + "ProvisioningState": { + "type": "string", + "description": "The provisioning state of the Fabric capacity resource.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "Provisioning", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "Resource has been created." + }, + { + "name": "Failed", + "value": "Failed", + "description": "Resource creation failed." + }, + { + "name": "Canceled", + "value": "Canceled", + "description": "Resource creation was canceled." + }, + { + "name": "Deleting", + "value": "Deleting", + "description": "Resource is deleting" + }, + { + "name": "Provisioning", + "value": "Provisioning", + "description": "Resource is provisioning" + }, + { + "name": "Updating", + "value": "Updating", + "description": "Resource is updating" + } + ] + }, + "readOnly": true + }, + "ResourceState": { + "type": "string", + "description": "The state of the Fabric capacity resource.", + "enum": [ + "Active", + "Provisioning", + "Failed", + "Updating", + "Deleting", + "Suspending", + "Suspended", + "Pausing", + "Paused", + "Resuming", + "Scaling", + "Preparing" + ], + "x-ms-enum": { + "name": "ResourceState", + "modelAsString": true, + "values": [ + { + "name": "Active", + "value": "Active", + "description": "Resource is active" + }, + { + "name": "Provisioning", + "value": "Provisioning", + "description": "Resource is provisioning" + }, + { + "name": "Failed", + "value": "Failed", + "description": "Resource is failed" + }, + { + "name": "Updating", + "value": "Updating", + "description": "Resource is updating" + }, + { + "name": "Deleting", + "value": "Deleting", + "description": "Resource is deleting" + }, + { + "name": "Suspending", + "value": "Suspending", + "description": "Resource is suspending" + }, + { + "name": "Suspended", + "value": "Suspended", + "description": "Resource is suspended" + }, + { + "name": "Pausing", + "value": "Pausing", + "description": "Resource is pausing" + }, + { + "name": "Paused", + "value": "Paused", + "description": "Resource is paused" + }, + { + "name": "Resuming", + "value": "Resuming", + "description": "Resource is resuming" + }, + { + "name": "Scaling", + "value": "Scaling", + "description": "Resource is scaling" + }, + { + "name": "Preparing", + "value": "Preparing", + "description": "Resource is preparing" + } + ] + } + }, + "RpSku": { + "type": "object", + "description": "Represents the SKU name and Azure pricing tier for Microsoft Fabric capacity resource.", + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU level." + }, + "tier": { + "$ref": "#/definitions/RpSkuTier", + "description": "The name of the Azure pricing tier to which the SKU applies." + } + }, + "required": [ + "name", + "tier" + ] + }, + "RpSkuDetailsForExistingResource": { + "type": "object", + "description": "An object that represents SKU details for existing resources", + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type" + }, + "sku": { + "$ref": "#/definitions/RpSku", + "description": "The SKU details" + } + }, + "required": [ + "resourceType", + "sku" + ] + }, + "RpSkuDetailsForNewResource": { + "type": "object", + "description": "The SKU details", + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type" + }, + "name": { + "type": "string", + "description": "The SKU's name" + }, + "locations": { + "type": "array", + "description": "The list of available locations for the SKU", + "items": { + "$ref": "#/definitions/Azure.Core.azureLocation" + } + } + }, + "required": [ + "resourceType", + "name", + "locations" + ] + }, + "RpSkuEnumerationForExistingResourceResult": { + "type": "object", + "description": "An object that represents enumerating SKUs for existing resources", + "properties": { + "value": { + "type": "array", + "description": "The SKU details", + "items": { + "$ref": "#/definitions/RpSkuDetailsForExistingResource" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "description": "Url for the next page. Null if no more pages available" + } + }, + "required": [ + "value" + ] + }, + "RpSkuEnumerationForNewResourceResult": { + "type": "object", + "description": "An object that represents enumerating SKUs for new resources.", + "properties": { + "value": { + "type": "array", + "description": "The collection of available SKUs for new resources", + "items": { + "$ref": "#/definitions/RpSkuDetailsForNewResource" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "description": "Url for the next page. Null if no more pages available" + } + }, + "required": [ + "value" + ] + }, + "RpSkuProperties": { + "type": "object", + "description": "The SKU properties", + "properties": { + "name": { + "type": "string", + "description": "The SKU's name" + }, + "locations": { + "type": "array", + "description": "The list of available locations for the SKU", + "items": { + "$ref": "#/definitions/Azure.Core.azureLocation" + } + } + }, + "required": [ + "name", + "locations" + ] + }, + "RpSkuTier": { + "type": "string", + "description": "The name of the Azure pricing tier to which the SKU applies.", + "enum": [ + "Fabric" + ], + "x-ms-enum": { + "name": "RpSkuTier", + "modelAsString": true, + "values": [ + { + "name": "fabric", + "value": "Fabric", + "description": "Fabric tier" + } + ] + } + }, + "RpSkuUpdate": { + "type": "object", + "description": "Represents the SKU name and Azure pricing tier for Microsoft Fabric capacity resource.", + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU level." + }, + "tier": { + "$ref": "#/definitions/RpSkuTier", + "description": "The name of the Azure pricing tier to which the SKU applies." + } + } + } + }, + "parameters": { + "CapacityNameParameter": { + "name": "capacityName", + "in": "path", + "description": "The name of the capacity.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 63, + "pattern": "^[a-z][a-z0-9]*$", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/fabric/resource-manager/readme.az.md b/specification/fabric/resource-manager/readme.az.md new file mode 100644 index 000000000000..1c2465de50e9 --- /dev/null +++ b/specification/fabric/resource-manager/readme.az.md @@ -0,0 +1,28 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. + +``` yaml $(az) && $(target-mode) != 'core' +az: + extensions: fabric + namespace: azure.mgmt.fabric + package-name: azure-mgmt-fabric +az-output-folder: $(azure-cli-extension-folder)/src/fabric +python-sdk-output-folder: "$(az-output-folder)/azext_fabric/vendored_sdks/fabric" +# add additional configuration here specific for Azure CLI +# refer to the faq.md for more details +``` + + + +This is for command modules that already in azure cli main repo. +``` yaml $(az) && $(target-mode) == 'core' +az: + extensions: fabric + namespace: azure.mgmt.fabric + package-name: azure-mgmt-fabric +az-output-folder: $(azure-cli-folder)/src/azure-cli/azure/cli/command_modules/fabric +python-sdk-output-folder: "$(az-output-folder)/vendored_sdks/fabric" +``` \ No newline at end of file diff --git a/specification/fabric/resource-manager/readme.cli.md b/specification/fabric/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c6cf6ad37ea4 --- /dev/null +++ b/specification/fabric/resource-manager/readme.cli.md @@ -0,0 +1 @@ +## CLI Common Settings for all the command line tools \ No newline at end of file diff --git a/specification/fabric/resource-manager/readme.csharp.md b/specification/fabric/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..61d372320715 --- /dev/null +++ b/specification/fabric/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.Fabric + output-folder: $(csharp-sdks-folder)/fabric/Microsoft.Fabric/src/Generated +``` \ No newline at end of file diff --git a/specification/fabric/resource-manager/readme.go.md b/specification/fabric/resource-manager/readme.go.md new file mode 100644 index 000000000000..6d0e6a00f5a0 --- /dev/null +++ b/specification/fabric/resource-manager/readme.go.md @@ -0,0 +1,11 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) && $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resourcemanager/fabric/armfabric +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +``` \ No newline at end of file diff --git a/specification/fabric/resource-manager/readme.md b/specification/fabric/resource-manager/readme.md new file mode 100644 index 000000000000..8220d50e43fe --- /dev/null +++ b/specification/fabric/resource-manager/readme.md @@ -0,0 +1,78 @@ +# app + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Microsoft.App service. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the app. + +``` yaml +openapi-type: arm +tag: package-2023-11-01 +``` + + +### Tag: package-2023-11-01 + +These settings apply only when `--tag=package-2023-11-01` is specified on the command line. + +```yaml $(tag) == 'package-2023-11-01' +input-file: + - Microsoft.Fabric/stable/2023-11-01/fabric.json +``` +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-resource-manager-schemas + - repo: azure-cli-extensions + - repo: azure-powershell +``` +## Az + +See configuration in [readme.az.md](./readme.az.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) \ No newline at end of file diff --git a/specification/fabric/resource-manager/readme.python.md b/specification/fabric/resource-manager/readme.python.md new file mode 100644 index 000000000000..d8c35b158a22 --- /dev/null +++ b/specification/fabric/resource-manager/readme.python.md @@ -0,0 +1,20 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + + +``` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +namespace: azure.mgmt.fabric +package-name: azure-mgmt-fabric +package-version: 1.0.0b1 +clear-output-folder: true +``` + +``` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/fabric/azure-mgmt-fabric/azure/mgmt/fabric +``` \ No newline at end of file diff --git a/specification/fabric/resource-manager/readme.typescript.md b/specification/fabric/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..4ce06286e4df --- /dev/null +++ b/specification/fabric/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-fabric" + output-folder: "$(typescript-sdks-folder)/sdk/fabric/arm-fabric" + payload-flattening-threshold: 1 + clear-output-folder: true + generate-metadata: true +``` \ No newline at end of file From 14e15e4f2218d461afc965d8e92964f032c5aacb Mon Sep 17 00:00:00 2001 From: xiaoxu qi Date: Tue, 25 Jun 2024 00:31:39 +0800 Subject: [PATCH 12/52] add new GA version: 2023-12-30 for Microsoft.DBForMySQL (#29031) * add base commit by copying previous version * update api version * add suppression yaml * add suppression yaml * fix suppression yaml * move suppression.yaml to service folder * fix suppression * fix path * remove migration --- .../2023-12-30/AzureADAdministrator.json | 325 +++++++++++ .../examples/AzureADAdministratorCreate.json | 49 ++ .../examples/AzureADAdministratorDelete.json | 24 + .../examples/AzureADAdministratorGet.json | 25 + .../AzureADAdministratorsListByServer.json | 28 + .../stable/2023-12-30/BackupAndExport.json | 361 ++++++++++++ .../Backups/stable/2023-12-30/Backups.json | 236 ++++++++ .../stable/2023-12-30/LongRunningBackups.json | 323 +++++++++++ .../2023-12-30/examples/BackupAndExport.json | 48 ++ .../stable/2023-12-30/examples/BackupGet.json | 23 + .../stable/2023-12-30/examples/BackupPut.json | 23 + .../examples/BackupsListByServer.json | 126 +++++ .../examples/LongRunningBackup.json | 42 ++ .../examples/LongRunningBackupGet.json | 24 + .../LongRunningBackupsListByServer.json | 27 + .../2023-12-30/examples/ValidateBackup.json | 17 + .../stable/2023-12-30/Configurations.json | 535 ++++++++++++++++++ .../examples/ConfigurationCreateOrUpdate.json | 33 ++ .../2023-12-30/examples/ConfigurationGet.json | 29 + .../examples/ConfigurationUpdate.json | 41 ++ .../examples/ConfigurationsBatchUpdate.json | 71 +++ .../examples/ConfigurationsListByServer.json | 146 +++++ .../stable/2023-12-30/Databases.json | 296 ++++++++++ .../2023-12-30/examples/DatabaseCreate.json | 40 ++ .../2023-12-30/examples/DatabaseDelete.json | 19 + .../2023-12-30/examples/DatabaseGet.json | 22 + .../examples/DatabasesListByServer.json | 34 ++ .../stable/2023-12-30/FirewallRules.json | 306 ++++++++++ .../examples/FirewallRuleCreate.json | 40 ++ .../examples/FirewallRuleDelete.json | 19 + .../2023-12-30/examples/FirewallRuleGet.json | 22 + .../examples/FirewallRulesListByServer.json | 34 ++ .../LogFiles/stable/2023-12-30/LogFiles.json | 147 +++++ .../examples/LogFilesListByServer.json | 28 + .../stable/2023-12-30/Maintenances.json | 371 ++++++++++++ .../2023-12-30/examples/MaintenanceRead.json | 28 + .../examples/MaintenanceUpdate.json | 39 ++ .../examples/MaintenancesListByServer.json | 46 ++ .../mysql/resource-manager/readme.md | 62 +- .../resource-manager/sdk-suppressions.yaml | 12 + specification/mysql/suppressions.yaml | 30 + 41 files changed, 4138 insertions(+), 13 deletions(-) create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/AzureADAdministrator.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorCreate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorDelete.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorGet.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorsListByServer.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/BackupAndExport.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/Backups.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/LongRunningBackups.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupAndExport.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupGet.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupPut.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupsListByServer.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackup.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackupGet.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackupsListByServer.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/ValidateBackup.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/Configurations.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationCreateOrUpdate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationGet.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationUpdate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationsBatchUpdate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationsListByServer.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/Databases.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseCreate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseDelete.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseGet.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabasesListByServer.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Firewall/stable/2023-12-30/FirewallRules.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Firewall/stable/2023-12-30/examples/FirewallRuleCreate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Firewall/stable/2023-12-30/examples/FirewallRuleDelete.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Firewall/stable/2023-12-30/examples/FirewallRuleGet.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Firewall/stable/2023-12-30/examples/FirewallRulesListByServer.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/LogFiles/stable/2023-12-30/LogFiles.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/LogFiles/stable/2023-12-30/examples/LogFilesListByServer.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Maintenance/stable/2023-12-30/Maintenances.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Maintenance/stable/2023-12-30/examples/MaintenanceRead.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Maintenance/stable/2023-12-30/examples/MaintenanceUpdate.json create mode 100644 specification/mysql/resource-manager/Microsoft.DBforMySQL/Maintenance/stable/2023-12-30/examples/MaintenancesListByServer.json create mode 100644 specification/mysql/resource-manager/sdk-suppressions.yaml create mode 100644 specification/mysql/suppressions.yaml diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/AzureADAdministrator.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/AzureADAdministrator.json new file mode 100644 index 000000000000..22ae2ba6da1f --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/AzureADAdministrator.json @@ -0,0 +1,325 @@ +{ + "swagger": "2.0", + "info": { + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules and configurations.", + "version": "2023-12-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.DBforMySQL/flexibleServers/{serverName}/administrators/{administratorName}": { + "put": { + "tags": [ + "AzureADAdministrators" + ], + "operationId": "AzureADAdministrators_CreateOrUpdate", + "x-ms-examples": { + "Create an azure ad administrator": { + "$ref": "./examples/AzureADAdministratorCreate.json" + } + }, + "description": "Creates or updates an existing Azure Active Directory administrator.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdministratorNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureADAdministrator" + }, + "description": "The required parameters for creating or updating an aad administrator." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureADAdministrator" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AzureADAdministrator" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AzureADAdministrators" + ], + "operationId": "AzureADAdministrators_Delete", + "x-ms-examples": { + "Delete an azure ad administrator": { + "$ref": "./examples/AzureADAdministratorDelete.json" + } + }, + "description": "Deletes an Azure AD Administrator.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdministratorNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "AzureADAdministrators" + ], + "operationId": "AzureADAdministrators_Get", + "x-ms-examples": { + "Get an azure ad administrator": { + "$ref": "./examples/AzureADAdministratorGet.json" + } + }, + "description": "Gets information about an azure ad administrator.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdministratorNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AzureADAdministrator" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/administrators": { + "get": { + "tags": [ + "AzureADAdministrators" + ], + "operationId": "AzureADAdministrators_ListByServer", + "x-ms-examples": { + "List Azure AD administrators in a server": { + "$ref": "./examples/AzureADAdministratorsListByServer.json" + } + }, + "description": "List all the AAD administrators in a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AdministratorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AdministratorProperties": { + "type": "object", + "properties": { + "administratorType": { + "type": "string", + "description": "Type of the sever administrator.", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorType", + "modelAsString": true + } + }, + "login": { + "type": "string", + "description": "Login name of the server administrator." + }, + "sid": { + "type": "string", + "description": "SID (object ID) of the server administrator." + }, + "tenantId": { + "type": "string", + "description": "Tenant ID of the administrator." + }, + "identityResourceId": { + "type": "string", + "description": "The resource id of the identity used for AAD Authentication." + } + }, + "description": "The properties of an administrator." + }, + "AzureADAdministrator": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AdministratorProperties", + "x-ms-client-flatten": true, + "description": "The properties of an administrator." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Administrator." + }, + "AdministratorListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureADAdministrator" + }, + "description": "The list of azure ad administrator of a server" + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "description": "A List of azure ad administrators." + } + }, + "parameters": { + "AdministratorNameParameter": { + "name": "administratorName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + }, + "description": "The name of the Azure AD Administrator.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorCreate.json new file mode 100644 index 000000000000..28a33c0f1b55 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorCreate.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "ActiveDirectory", + "api-version": "2023-12-30", + "parameters": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c12b7025-bfe2-46c1-b463-993b5e4cd467", + "identityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/test-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/test-umi" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestsvc4/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.DBforMySQL/flexibleServers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c12b7025-bfe2-46c1-b463-993b5e4cd467", + "identityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/test-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/test-umi" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestsvc4/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.DBforMySQL/flexibleServers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c12b7025-bfe2-46c1-b463-993b5e4cd467", + "identityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/test-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/test-umi" + } + } + }, + "202": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorDelete.json new file mode 100644 index 000000000000..eead4ea6971a --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorDelete.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "ActiveDirectory", + "api-version": "2023-12-30" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/azureAsyncOperation/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30", + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/operationResults/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30" + } + }, + "204": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/azureAsyncOperation/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30", + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/operationResults/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorGet.json new file mode 100644 index 000000000000..26056a05b5b5 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "ActiveDirectory", + "api-version": "2023-12-30" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestsvc4/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.DBforMySQL/flexibleServers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c12b7025-bfe2-46c1-b463-993b5e4cd467", + "identityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/test-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/test-umi" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorsListByServer.json new file mode 100644 index 000000000000..b3a2b45b15ee --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/AAD/stable/2023-12-30/examples/AzureADAdministratorsListByServer.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "api-version": "2023-12-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestsvc4/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.DBforMySQL/flexibleServers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c12b7025-bfe2-46c1-b463-993b5e4cd467", + "identityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/test-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/test-umi" + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/BackupAndExport.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/BackupAndExport.json new file mode 100644 index 000000000000..d6fdc32b708d --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/BackupAndExport.json @@ -0,0 +1,361 @@ +{ + "swagger": "2.0", + "consumes": [ + "application/json" + ], + "host": "management.azure.com", + "info": { + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules and configurations.", + "version": "2023-12-30" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/backupAndExport": { + "post": { + "tags": [ + "BackupAndExport" + ], + "operationId": "BackupAndExport_Create", + "x-ms-examples": { + "Create and Export Backup": { + "$ref": "./examples/BackupAndExport.json" + } + }, + "description": "Exports the backup of the given server by creating a backup if not existing.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BackupAndExportRequest" + }, + "description": "The required parameters for creating and exporting backup of the given server." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupAndExportResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "URL to retrieve the final result after operation completes.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/validateBackup": { + "post": { + "tags": [ + "BackupAndExport" + ], + "operationId": "BackupAndExport_ValidateBackup", + "x-ms-examples": { + "Validate Backup": { + "$ref": "./examples/ValidateBackup.json" + } + }, + "description": "Validates if backup can be performed for given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateBackupResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "BackupRequestBase": { + "description": "BackupRequestBase is the base for all backup request.", + "required": [ + "backupSettings" + ], + "type": "object", + "properties": { + "backupSettings": { + "$ref": "#/definitions/BackupSettings", + "description": "Backup Settings" + } + } + }, + "BackupAndExportRequest": { + "description": "BackupAndExport API Request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BackupRequestBase" + } + ], + "required": [ + "backupSettings", + "targetDetails" + ], + "properties": { + "targetDetails": { + "$ref": "#/definitions/BackupStoreDetails", + "description": "Backup Target Store Details" + } + } + }, + "BackupStoreDetails": { + "description": "Details about the target where the backup content will be stored.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "Type of the specific object - used for deserializing", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "FullBackupStoreDetails": { + "description": "FullBackupStoreDetails is used for scenarios where backup data is streamed/copied over to a storage destination.", + "type": "object", + "required": [ + "sasUriList" + ], + "allOf": [ + { + "$ref": "#/definitions/BackupStoreDetails" + } + ], + "properties": { + "sasUriList": { + "description": "SASUriList of storage containers where backup data is to be streamed/copied.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "BackupSettings": { + "description": "Backup Settings", + "type": "object", + "required": [ + "backupName" + ], + "properties": { + "backupName": { + "$ref": "../../../common-types/v1/common-types.json#/definitions/BackupName" + }, + "backupFormat": { + "description": "Backup Format for the current backup. (CollatedFormat is INTERNAL – DO NOT USE)", + "enum": [ + "CollatedFormat", + "Raw" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupFormat", + "modelAsString": true + } + } + } + }, + "ValidateBackupResponseProperties": { + "description": "ValidateBackup Response Properties", + "type": "object", + "properties": { + "numberOfContainers": { + "format": "int32", + "description": "Estimated no of storage containers required for resource data to be backed up.", + "type": "integer" + } + } + }, + "BackupAndExportResponseProperties": { + "description": "BackupAndExport Response Properties", + "type": "object", + "properties": { + "datasourceSizeInBytes": { + "format": "int64", + "description": "Size of datasource in bytes", + "type": "integer" + }, + "dataTransferredInBytes": { + "format": "int64", + "description": "Data transferred in bytes", + "type": "integer" + }, + "backupMetadata": { + "description": "Metadata related to backup to be stored for restoring resource in key-value pairs.", + "type": "string" + } + } + }, + "BackupAndExportResponse": { + "type": "object", + "properties": { + "status": { + "description": "The operation status", + "type": "string", + "enum": [ + "Pending", + "InProgress", + "Succeeded", + "Failed", + "CancelInProgress", + "Canceled" + ], + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": false, + "values": [ + { + "value": "Pending", + "description": "The operation has been accepted but hasn't started." + }, + { + "value": "InProgress", + "description": "The operation is running" + }, + { + "value": "Succeeded", + "description": "The operation Succeeded" + }, + { + "value": "Failed", + "description": "The operation Failed" + }, + { + "value": "CancelInProgress", + "description": "The cancellation in progress" + }, + { + "value": "Canceled", + "description": "The operation has been Canceled" + } + ] + } + }, + "startTime": { + "description": "Start time", + "type": "string", + "format": "date-time" + }, + "endTime": { + "description": "End time", + "type": "string", + "format": "date-time" + }, + "percentComplete": { + "description": "Operation progress (0-100).", + "type": "number", + "format": "double", + "minimum": 0, + "maximum": 100 + }, + "properties": { + "$ref": "#/definitions/BackupAndExportResponseProperties", + "x-ms-client-flatten": true, + "description": "The response properties of a backup and export operation." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + ], + "description": "Represents BackupAndExport API Response" + }, + "ValidateBackupResponse": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ValidateBackupResponseProperties", + "x-ms-client-flatten": true, + "description": "The response properties of a pre backup operation." + } + }, + "description": "Represents ValidateBackup API Response" + } + }, + "produces": [ + "application/json" + ], + "schemes": [ + "https" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/Backups.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/Backups.json new file mode 100644 index 000000000000..7ac65cbf406b --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/Backups.json @@ -0,0 +1,236 @@ +{ + "swagger": "2.0", + "info": { + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules and configurations.", + "version": "2023-12-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.DBforMySQL/flexibleServers/{serverName}/backups/{backupName}": { + "put": { + "tags": [ + "Backups" + ], + "operationId": "Backups_Put", + "x-ms-examples": { + "Create backup for a server": { + "$ref": "./examples/BackupPut.json" + } + }, + "description": "Create backup for a given server with specified backup name.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/BackupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerBackup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Backups" + ], + "operationId": "Backups_Get", + "x-ms-examples": { + "Get a backup for a server": { + "$ref": "./examples/BackupGet.json" + } + }, + "description": "List all the backups for a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/BackupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerBackup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/backups": { + "get": { + "tags": [ + "Backups" + ], + "operationId": "Backups_ListByServer", + "x-ms-examples": { + "List backups for a server": { + "$ref": "./examples/BackupsListByServer.json" + } + }, + "description": "List all the backups for a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerBackupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServerBackupProperties": { + "type": "object", + "properties": { + "backupType": { + "type": "string", + "description": "Backup type." + }, + "completedTime": { + "type": "string", + "format": "date-time", + "description": "Backup completed time (ISO8601 format)." + }, + "source": { + "type": "string", + "description": "Backup source" + } + }, + "description": "The properties of a server backup." + }, + "ServerBackup": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ServerBackupProperties", + "x-ms-client-flatten": true, + "description": "The properties of a server backup." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "Server backup properties" + }, + "ServerBackupListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerBackup" + }, + "description": "The list of backups of a server." + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "description": "A list of server backups." + } + }, + "parameters": { + "BackupNameParameter": { + "name": "backupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backup.", + "x-ms-parameter-location": "method", + "pattern": "^[-\\w\\._]+$" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/LongRunningBackups.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/LongRunningBackups.json new file mode 100644 index 000000000000..ebb3a317ef7a --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/LongRunningBackups.json @@ -0,0 +1,323 @@ +{ + "swagger": "2.0", + "info": { + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules and configurations.", + "version": "2023-12-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.DBforMySQL/flexibleServers/{serverName}/backupsV2/{backupName}": { + "put": { + "tags": [ + "backupsV2" + ], + "operationId": "LongRunningBackup_Create", + "x-ms-examples": { + "Create backup for a server": { + "$ref": "./examples/LongRunningBackup.json" + } + }, + "description": "Create backup for a given server with specified backup name.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/BackupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/ServerBackupV2" + }, + "description": "The required parameters for creating and exporting backup of the given server." + } + ], + "responses": { + "200": { + "description": "Successfully backup.", + "schema": { + "$ref": "#/definitions/ServerBackupV2" + } + }, + "201": { + "description": "Successfully backup.", + "schema": { + "$ref": "#/definitions/ServerBackupV2" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "URL to retrieve the final result after operation completes.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "backupsV2" + ], + "operationId": "LongRunningBackups_Get", + "x-ms-examples": { + "Get a backup for a server": { + "$ref": "./examples/LongRunningBackupGet.json" + } + }, + "description": "Get backup for a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/BackupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerBackupV2" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/backupsV2": { + "get": { + "tags": [ + "backupsV2" + ], + "operationId": "LongRunningBackups_List", + "x-ms-examples": { + "List backups for a server": { + "$ref": "./examples/LongRunningBackupsListByServer.json" + } + }, + "description": "List all the backups for a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerBackupV2ListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "provisioningStateProperties": { + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state of backup resource." + } + }, + "description": "The properties of a server backup." + }, + "ServerBackupPropertiesV2": { + "type": "object", + "properties": { + "backupNameV2": { + "type": "string", + "description": "Backup name" + }, + "backupType": { + "type": "string", + "enum": [ + "FULL" + ], + "x-ms-enum": { + "name": "backupType", + "modelAsString": true + } + }, + "completedTime": { + "type": "string", + "format": "date-time", + "description": "Backup completed time (ISO8601 format)." + }, + "source": { + "type": "string", + "description": "Backup source" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state of backup resource." + } + }, + "description": "The properties of a server backup." + }, + "ServerBackupV2": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ServerBackupPropertiesV2", + "x-ms-client-flatten": true, + "description": "The properties of a server backup." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "Server backup properties" + }, + "Provisioning": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/provisioningStateProperties", + "x-ms-client-flatten": true, + "description": "The properties of provisioning." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "Server backup properties" + }, + "ServerBackupV2ListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerBackupV2" + }, + "description": "The list of backups of a server." + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "description": "A list of server backups." + } + }, + "parameters": { + "BackupNameParameter": { + "name": "backupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backup.", + "x-ms-parameter-location": "method", + "pattern": "^[-\\w\\._]+$" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupAndExport.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupAndExport.json new file mode 100644 index 000000000000..55e56836bd39 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupAndExport.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2023-12-30", + "serverName": "mysqltestserver", + "resourceGroupName": "TestGroup", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "targetDetails": { + "objectType": "FullBackupStoreDetails", + "sasUriList": [ + "sasuri1", + "sasuri2" + ] + }, + "backupSettings": { + "backupName": "customer-backup-name" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/cb9d743d-2140-4e73-b871-cd31abab1d2f/resourceGroups/mrgsumitkumatest1/providers/Microsoft.DBforMySQL/flexibleServers/servermysql-01/backupAndExport/custom-backup101", + "name": "custom-backup101", + "type": "Microsoft.DBforMySQL/flexibleServers/backupAndExport", + "status": "Failed", + "startTime": "2022-12-29T07:34:02.328326Z", + "endTime": "2022-12-29T07:37:05.6406008Z", + "percentComplete": 100, + "properties": { + "datasourceSizeInBytes": 1024, + "dataTransferredInBytes": 1024, + "backupMetadata": "{\"key1\":\"value1\",\"key2\":\"value2\"}" + }, + "error": { + "code": "AggregateException", + "message": "System.AggregateException: One or more errors occurred. (Mismatch in count of number of Commited-Blocks from service.)" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/eastus/azureAsyncOperation/00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupGet.json new file mode 100644 index 000000000000..11e97d5e876a --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "backupName": "daily_20210615T160516", + "serverName": "mysqltestserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-15T16:05:19.902522+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210615T160516", + "name": "daily_20210615T160516", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupPut.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupPut.json new file mode 100644 index 000000000000..90b443700ef8 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupPut.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "backupName": "mybackup", + "serverName": "mysqltestserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2022-05-07T07:38:01.1498043+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/customer_20220507t073755_bb392c3b-17c6-4d3f-9742-8479ca87b3ac_mybackup", + "name": "customer_20220507t073755_bb392c3b-17c6-4d3f-9742-8479ca87b3ac_mybackup", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupsListByServer.json new file mode 100644 index 000000000000..967776dc4364 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/BackupsListByServer.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serverName": "mysqltestserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-15T16:05:19.902522+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210615T160516", + "name": "daily_20210615T160516", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-16T16:05:23.9243453+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210616T160520", + "name": "daily_20210616T160520", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-17T16:05:28.1247488+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210617T160525", + "name": "daily_20210617T160525", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-18T16:05:32.2736701+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210618T160529", + "name": "daily_20210618T160529", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-19T16:05:36.8603354+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210619T160533", + "name": "daily_20210619T160533", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-20T16:05:41.9200138+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210620T160538", + "name": "daily_20210620T160538", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-21T16:05:48.8528447+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210621T160543", + "name": "daily_20210621T160543", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-22T16:08:06.3121688+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210622T160803", + "name": "daily_20210622T160803", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-22T21:08:10.5057354+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210622T210807", + "name": "daily_20210622T210807", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-23T21:24:16.9401531+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210623T212413", + "name": "daily_20210623T212413", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + }, + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-24T06:13:31.4962137+00:00" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backups/daily_20210624T061328", + "name": "daily_20210624T061328", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackup.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackup.json new file mode 100644 index 000000000000..63e1a01d63b7 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackup.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serverName": "mysqltestserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "backupName": "testback" + }, + "responses": { + "200": { + "body": { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2022-05-07T07:38:01.1498043+00:00", + "provisioningState": "Ready" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backupsV2/customer_20220507t073755_bb392c3b-17c6-4d3f-9742-8479ca87b3ac_mybackup", + "name": "customer_20220507t073755_bb392c3b-17c6-4d3f-9742-8479ca87b3ac_mybackup", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + } + }, + "201": { + "body": { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2022-05-07T07:38:01.1498043+00:00", + "provisioningState": "Ready" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backupsV2/customer_20220507t073755_bb392c3b-17c6-4d3f-9742-8479ca87b3ac_mybackup", + "name": "customer_20220507t073755_bb392c3b-17c6-4d3f-9742-8479ca87b3ac_mybackup", + "type": "Microsoft.DBforMySQL/flexibleServers/backups" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2023-06-01-preview" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackupGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackupGet.json new file mode 100644 index 000000000000..070f009ab376 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackupGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "backupName": "daily_20210615T160516", + "serverName": "mysqltestserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-15T16:05:19.902522+00:00", + "provisioningState": "Ready" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backupsV2/daily_20210615T160516", + "name": "daily_20210615T160516", + "type": "Microsoft.DBforMySQL/flexibleServers/backupsV2" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackupsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackupsListByServer.json new file mode 100644 index 000000000000..1baa3e579276 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/LongRunningBackupsListByServer.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serverName": "mysqltestserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "backupType": "FULL", + "source": "Automatic", + "completedTime": "2021-06-15T16:05:19.902522+00:00", + "provisioningState": "Ready" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/backupsV2/daily_20210615T160516", + "name": "daily_20210615T160516", + "type": "Microsoft.DBforMySQL/flexibleServers/backupsV2" + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/ValidateBackup.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/ValidateBackup.json new file mode 100644 index 000000000000..d929d4d78c2d --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Backups/stable/2023-12-30/examples/ValidateBackup.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2023-12-30", + "serverName": "mysqltestserver", + "resourceGroupName": "TestGroup", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "properties": { + "numberOfContainers": 1 + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/Configurations.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/Configurations.json new file mode 100644 index 000000000000..233c5973cbea --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/Configurations.json @@ -0,0 +1,535 @@ +{ + "swagger": "2.0", + "info": { + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules and configurations.", + "version": "2023-12-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.DBforMySQL/flexibleServers/{serverName}/configurations/{configurationName}": { + "put": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_CreateOrUpdate", + "x-ms-examples": { + "ConfigurationCreateOrUpdate": { + "$ref": "./examples/ConfigurationCreateOrUpdate.json" + } + }, + "description": "Updates a configuration of a server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Configuration" + }, + "description": "The required parameters for updating a server configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_Update", + "x-ms-examples": { + "Update a user configuration": { + "$ref": "./examples/ConfigurationUpdate.json" + } + }, + "description": "Updates a configuration of a server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Configuration" + }, + "description": "The required parameters for updating a server configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_Get", + "x-ms-examples": { + "Get a configuration": { + "$ref": "./examples/ConfigurationGet.json" + } + }, + "description": "Gets information about a configuration of server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/updateConfigurations": { + "post": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_BatchUpdate", + "x-ms-examples": { + "ConfigurationList": { + "$ref": "./examples/ConfigurationsBatchUpdate.json" + } + }, + "description": "Update a list of configurations in a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationListForBatchUpdate" + }, + "description": "The parameters for updating a list of server configuration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationListResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/configurations": { + "get": { + "tags": [ + "Configurations" + ], + "operationId": "Configurations_ListByServer", + "x-ms-examples": { + "List all configurations for a server": { + "$ref": "./examples/ConfigurationsListByServer.json" + } + }, + "description": "List all the configurations in a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/ConfigurationTagsParameter" + }, + { + "$ref": "#/parameters/ConfigurationKeywordParameter" + }, + { + "$ref": "#/parameters/ConfigurationPageParameter" + }, + { + "$ref": "#/parameters/ConfigurationPageSizeParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ConfigurationProperties": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "Value of the configuration." + }, + "currentValue": { + "type": "string", + "description": "Current value of the configuration." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Description of the configuration." + }, + "documentationLink": { + "type": "string", + "readOnly": true, + "description": "The link used to get the document from community or Azure site." + }, + "defaultValue": { + "type": "string", + "readOnly": true, + "description": "Default value of the configuration." + }, + "dataType": { + "type": "string", + "readOnly": true, + "description": "Data type of the configuration." + }, + "allowedValues": { + "type": "string", + "readOnly": true, + "description": "Allowed values of the configuration." + }, + "source": { + "type": "string", + "description": "Source of the configuration.", + "enum": [ + "system-default", + "user-override" + ], + "x-ms-enum": { + "name": "ConfigurationSource", + "modelAsString": true + } + }, + "isReadOnly": { + "type": "string", + "readOnly": true, + "description": "If is the configuration read only.", + "enum": [ + "True", + "False" + ], + "x-ms-enum": { + "name": "IsReadOnly", + "modelAsString": true + } + }, + "isConfigPendingRestart": { + "type": "string", + "readOnly": true, + "description": "If is the configuration pending restart or not.", + "enum": [ + "True", + "False" + ], + "x-ms-enum": { + "name": "IsConfigPendingRestart", + "modelAsString": true + } + }, + "isDynamicConfig": { + "type": "string", + "readOnly": true, + "description": "If is the configuration dynamic.", + "enum": [ + "True", + "False" + ], + "x-ms-enum": { + "name": "IsDynamicConfig", + "modelAsString": true + } + } + }, + "description": "The properties of a configuration." + }, + "Configuration": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ConfigurationProperties", + "x-ms-client-flatten": true, + "description": "The properties of a configuration." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Configuration." + }, + "ConfigurationListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Configuration" + }, + "description": "The list of server configurations." + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "description": "A list of server configurations." + }, + "ConfigurationForBatchUpdate": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the configuration." + }, + "properties": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "Value of the configuration." + }, + "source": { + "type": "string", + "description": "Source of the configuration." + } + }, + "x-ms-client-flatten": true, + "description": "The properties can be updated for a configuration." + } + }, + "description": "Represents a Configuration." + }, + "ConfigurationListForBatchUpdate": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationForBatchUpdate" + }, + "x-ms-identifiers": [], + "description": "The list of server configurations." + }, + "resetAllToDefault": { + "type": "string", + "description": "Whether to reset all server parameters to default.", + "enum": [ + "True", + "False" + ], + "x-ms-enum": { + "name": "ResetAllToDefault", + "modelAsString": true + } + } + }, + "description": "A list of server configurations to update." + } + }, + "parameters": { + "ConfigurationNameParameter": { + "name": "configurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server configuration.", + "x-ms-parameter-location": "method" + }, + "ConfigurationTagsParameter": { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "The tags of the server configuration.", + "x-ms-parameter-location": "method" + }, + "ConfigurationKeywordParameter": { + "name": "keyword", + "in": "query", + "required": false, + "type": "string", + "description": "The keyword of the server configuration.", + "x-ms-parameter-location": "method" + }, + "ConfigurationPageParameter": { + "name": "page", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The page of the server configuration.", + "x-ms-parameter-location": "method" + }, + "ConfigurationPageSizeParameter": { + "name": "pageSize", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The pageSize of the server configuration.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationCreateOrUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationCreateOrUpdate.json new file mode 100644 index 000000000000..0c024eec69cb --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationCreateOrUpdate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "configurationName": "event_scheduler", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties": { + "value": "off", + "source": "user-override" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "value": "ON", + "description": "Indicates the status of the Event Scheduler.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF,DISABLED", + "source": "user-override" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/event_scheduler", + "name": "event_scheduler", + "type": "Microsoft.DBforMySQL/servers/configurations" + } + }, + "202": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationGet.json new file mode 100644 index 000000000000..47a3f283d895 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "configurationName": "event_scheduler", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "properties": { + "value": "OFF", + "description": "Indicates the status of the Event Scheduler. It is always OFF for a replica server to keep the replication consistency.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/testserver/configurations/event_scheduler", + "name": "event_scheduler", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationUpdate.json new file mode 100644 index 000000000000..a58b78d4cd38 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serverName": "testserver", + "configurationName": "event_scheduler", + "resourceGroupName": "testrg", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties": { + "value": "on", + "source": "user-override" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "value": "ON", + "description": "Indicates the status of the Event Scheduler. It is always OFF for a replica server to keep the replication consistency.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "user-override", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/testserver/configurations/event_scheduler", + "name": "event_scheduler", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/azureAsyncOperation/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30", + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/operationResults/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationsBatchUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationsBatchUpdate.json new file mode 100644 index 000000000000..89029817bb12 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationsBatchUpdate.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "serverName": "mysqltestserver", + "resourceGroupName": "testrg", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "value": [ + { + "name": "event_scheduler", + "properties": { + "value": "OFF" + } + }, + { + "name": "div_precision_increment", + "properties": { + "value": "8" + } + } + ], + "resetAllToDefault": "False" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "value": "ON", + "description": "Indicates the status of the Event Scheduler. It is always OFF for a replica server to keep the replication consistency.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "user-override", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/event_scheduler", + "name": "event_scheduler", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "8", + "description": "Number of digits by which to increase the scale of the result of division operations.", + "defaultValue": "4", + "dataType": "Integer", + "allowedValues": "0-30", + "source": "user-override", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/div_precision_increment", + "name": "div_precision_increment", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + } + ] + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/azureAsyncOperation/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30", + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/operationResults/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationsListByServer.json new file mode 100644 index 000000000000..7cedc8744908 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Configurations/stable/2023-12-30/examples/ConfigurationsListByServer.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "serverName": "mysqltestserver", + "resourceGroupName": "testrg", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "page": 1, + "pageSize": 8 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "value": "OFF", + "description": "Tell the server to enable or disable archive engine.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "False", + "isReadOnly": "True" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/archive", + "name": "archive", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "Allow to audit the log.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/audit_log_enabled", + "name": "audit_log_enabled", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "CONNECTION", + "description": "Select the events to audit logs.", + "defaultValue": "CONNECTION", + "dataType": "Set", + "allowedValues": "DDL,DML_SELECT,DML_NONSELECT,DCL,ADMIN,DML,GENERAL,CONNECTION,TABLE_ACCESS", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/audit_log_events", + "name": "audit_log_events", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "azure_superuser", + "description": "The comma-separated user list whose commands will not be in the audit logs.", + "defaultValue": "azure_superuser", + "dataType": "String", + "allowedValues": "", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/audit_log_exclude_users", + "name": "audit_log_exclude_users", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "", + "description": "The comma-separated user list whose commands will be in the audit logs. It takes higher priority if the same user name is found in audit_log_exclude_users.", + "defaultValue": "", + "dataType": "String", + "allowedValues": "", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/audit_log_include_users", + "name": "audit_log_include_users", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "ON", + "description": "Allow to audit the slow log.", + "defaultValue": "ON", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "True" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/audit_slow_log_enabled", + "name": "audit_slow_log_enabled", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "OFF", + "description": "Controls whether the server autogenerates SSL key and certificate files in the data directory, if they do not already exist.", + "defaultValue": "OFF", + "dataType": "Enumeration", + "allowedValues": "ON,OFF", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "False", + "isReadOnly": "True" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/auto_generate_certs", + "name": "auto_generate_certs", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + }, + { + "properties": { + "value": "1", + "description": "The auto_increment_increment is intended for use with source-to-source replication, and can be used to control the operation of AUTO_INCREMENT columns.", + "defaultValue": "1", + "dataType": "Integer", + "allowedValues": "1-65535", + "source": "system-default", + "isConfigPendingRestart": "False", + "isDynamicConfig": "True", + "isReadOnly": "False" + }, + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/flexibleServers/mysqltestserver/configurations/auto_increment_increment", + "name": "auto_increment_increment", + "type": "Microsoft.DBforMySQL/flexibleServers/configurations" + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/Databases.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/Databases.json new file mode 100644 index 000000000000..35f4bdca4826 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/Databases.json @@ -0,0 +1,296 @@ +{ + "swagger": "2.0", + "info": { + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules and configurations.", + "version": "2023-12-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.DBforMySQL/flexibleServers/{serverName}/databases/{databaseName}": { + "put": { + "tags": [ + "Databases" + ], + "operationId": "Databases_CreateOrUpdate", + "x-ms-examples": { + "Create a database": { + "$ref": "./examples/DatabaseCreate.json" + } + }, + "description": "Creates a new database or updates an existing database.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The required parameters for creating or updating a database." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Databases" + ], + "operationId": "Databases_Delete", + "x-ms-examples": { + "Delete a database": { + "$ref": "./examples/DatabaseDelete.json" + } + }, + "description": "Deletes a database.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Databases" + ], + "operationId": "Databases_Get", + "x-ms-examples": { + "Get a database": { + "$ref": "./examples/DatabaseGet.json" + } + }, + "description": "Gets information about a database.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "operationId": "Databases_ListByServer", + "x-ms-examples": { + "List databases in a server": { + "$ref": "./examples/DatabasesListByServer.json" + } + }, + "description": "List all the databases in a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DatabaseProperties": { + "type": "object", + "properties": { + "charset": { + "type": "string", + "description": "The charset of the database." + }, + "collation": { + "type": "string", + "description": "The collation of the database." + } + }, + "description": "The properties of a database." + }, + "Database": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/DatabaseProperties", + "x-ms-client-flatten": true, + "description": "The properties of a database." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Database." + }, + "DatabaseListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of databases housed in a server" + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "description": "A List of databases." + } + }, + "parameters": { + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseCreate.json new file mode 100644 index 000000000000..52a0985f236f --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "parameters": { + "properties": { + "charset": "utf8", + "collation": "utf8_general_ci" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforMySQL/flexibleServers/databases", + "properties": { + "charset": "utf8", + "collation": "utf8_general_ci" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforMySQL/flexibleServers/databases", + "properties": { + "charset": "utf8", + "collation": "utf8_general_ci" + } + } + }, + "202": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseDelete.json new file mode 100644 index 000000000000..f06bcd0c2aa0 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/azureAsyncOperation/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30", + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DBforMySQL/locations/southeastasia/operationResults/e276a03a-1770-4549-86f5-0edffae8997c?api-version=2023-12-30" + } + }, + "204": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseGet.json new file mode 100644 index 000000000000..b1bbd614f21c --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabaseGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "databaseName": "db1", + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforMySQL/flexibleServers/databases", + "properties": { + "charset": "utf8", + "collation": "utf8_general_ci" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabasesListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabasesListByServer.json new file mode 100644 index 000000000000..57ecfa99d598 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Databases/stable/2023-12-30/examples/DatabasesListByServer.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serverName": "testserver", + "resourceGroupName": "TestGroup", + "api-version": "2023-12-30", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/testserver/databases/db1", + "name": "db1", + "type": "Microsoft.DBforMySQL/flexibleServers/databases", + "properties": { + "charset": "utf8", + "collation": "utf8_general_ci" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/flexibleServers/testserver/databases/db2", + "name": "db2", + "type": "Microsoft.DBforMySQL/flexibleServers/databases", + "properties": { + "charset": "utf8", + "collation": "utf8_general_ci" + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/Firewall/stable/2023-12-30/FirewallRules.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Firewall/stable/2023-12-30/FirewallRules.json new file mode 100644 index 000000000000..95a88cbc4150 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/Firewall/stable/2023-12-30/FirewallRules.json @@ -0,0 +1,306 @@ +{ + "swagger": "2.0", + "info": { + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules and configurations.", + "version": "2023-12-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.DBforMySQL/flexibleServers/{serverName}/firewallRules/{firewallRuleName}": { + "put": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_CreateOrUpdate", + "x-ms-examples": { + "Create a firewall rule": { + "$ref": "./examples/FirewallRuleCreate.json" + } + }, + "description": "Creates a new firewall rule or updates an existing firewall rule.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallRule" + }, + "description": "The required parameters for creating or updating a firewall rule." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_Delete", + "x-ms-examples": { + "Delete a firewall rule": { + "$ref": "./examples/FirewallRuleDelete.json" + } + }, + "description": "Deletes a firewall rule.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_Get", + "x-ms-examples": { + "Get a firewall rule": { + "$ref": "./examples/FirewallRuleGet.json" + } + }, + "description": "Gets information about a server firewall rule.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/FirewallRuleNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/flexibleServers/{serverName}/firewallRules": { + "get": { + "tags": [ + "FirewallRules" + ], + "operationId": "FirewallRules_ListByServer", + "x-ms-examples": { + "List all firewall rules in a server": { + "$ref": "./examples/FirewallRulesListByServer.json" + } + }, + "description": "List all the firewall rules in a given server.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common-types/v1/common-types.json#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FirewallRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallRuleProperties": { + "type": "object", + "properties": { + "startIpAddress": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "description": "The start IP address of the server firewall rule. Must be IPv4 format." + }, + "endIpAddress": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "description": "The end IP address of the server firewall rule. Must be IPv4 format." + } + }, + "required": [ + "startIpAddress", + "endIpAddress" + ], + "description": "The properties of a server firewall rule." + }, + "FirewallRule": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/FirewallRuleProperties", + "x-ms-client-flatten": true, + "description": "The properties of a firewall rule." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "required": [ + "properties" + ], + "description": "Represents a server firewall rule." + }, + "FirewallRuleListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallRule" + }, + "description": "The list of firewall rules in a server." + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + }, + "description": "A list of firewall rules." + } + }, + "parameters": { + "FirewallRuleNameParameter": { + "name": "firewallRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server firewall rule.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][-_a-zA-Z0-9]{0,79}(? Date: Mon, 24 Jun 2024 14:20:06 -0700 Subject: [PATCH 13/52] fix docs creating bad docstrings in purview (#29558) * fix docs creating bad docstrings in purview * fix ci --- .../purview/Azure.Analytics.Purview.DataMap/routes.tsp | 8 ++------ .../stable/2023-09-01/purviewdatamap.json | 2 +- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp b/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp index 8e42754d7f19..e7ddc9558184 100644 --- a/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp +++ b/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp @@ -978,12 +978,8 @@ interface Glossary { @doc(""" Get all glossaries. Recommend using limit/offset to get pagination result. Recommend using 'ignoreTermsAndCategories=true' and fetch terms/categories - separately using - - 'GET /datamap/api/atlas/v2/glossary/{glossaryId}/terms' - and - - 'GET '/datamap/api/atlas/v2/glossary/{glossaryId}/categories'. + separately using 'GET /datamap/api/atlas/v2/glossary/{glossaryId}/terms' + and 'GET '/datamap/api/atlas/v2/glossary/{glossaryId}/categories'. """) @route("/atlas/v2/glossary") @get diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json index ecda9cc408ec..f2e6eb6c6382 100644 --- a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json @@ -1604,7 +1604,7 @@ "/atlas/v2/glossary": { "get": { "operationId": "Glossary_List", - "description": "Get all glossaries. Recommend using limit/offset to get pagination result.\nRecommend using 'ignoreTermsAndCategories=true' and fetch terms/categories\nseparately using \n\n 'GET /datamap/api/atlas/v2/glossary/{glossaryId}/terms'\nand \n\n 'GET '/datamap/api/atlas/v2/glossary/{glossaryId}/categories'.", + "description": "Get all glossaries. Recommend using limit/offset to get pagination result.\nRecommend using 'ignoreTermsAndCategories=true' and fetch terms/categories\nseparately using 'GET /datamap/api/atlas/v2/glossary/{glossaryId}/terms'\nand 'GET '/datamap/api/atlas/v2/glossary/{glossaryId}/categories'.", "parameters": [ { "$ref": "#/parameters/AtlasApiVersionParameter" From 0ce2859b2f018adcea3d14346951ff4270dcff3d Mon Sep 17 00:00:00 2001 From: Bavneet Singh <33008256+bavneetsingh16@users.noreply.github.com> Date: Mon, 24 Jun 2024 17:00:12 -0700 Subject: [PATCH 14/52] Microsoft.Kubernetes to add preview version 2024-07-01-preview (#29487) * copy API version from 2024-06-01-preview to 2024-07-01-preview * updating API version to 2024-07-01-preview * update readme files * add configurationSettings parameter for this api version * add secret flag for protectedSettings * update readme file * made gateway as first class param * update to a more appropriate name * fix prettier issue --------- Co-authored-by: Bavneet Singh --- .../2024-07-01-preview/connectedClusters.json | 1134 +++++++++++++++++ ...tersListClusterCredentialResultCSPAAD.json | 30 + ...rsListClusterCredentialResultCSPToken.json | 30 + ...stersListClusterCredentialResultHPAAD.json | 24 + ...ersListClusterCredentialResultHPToken.json | 24 + .../examples/CreateClusterExample.json | 83 ++ .../CreateClusterPrivateLinkExample.json | 89 ++ .../examples/CreateCluster_KindExample.json | 154 +++ .../examples/DeleteClusterExample.json | 18 + .../examples/GetClusterExample.json | 76 ++ .../GetClustersByResourceGroupExample.json | 87 ++ .../GetClustersBySubscriptionExample.json | 86 ++ .../GetProvisionedClusterExample.json | 68 + ...ListConnectedClusterOperationsExample.json | 41 + .../examples/UpdateClusterExample.json | 55 + .../resource-manager/readme.go.md | 10 + .../resource-manager/readme.java.md | 13 + .../resource-manager/readme.md | 11 +- .../resource-manager/readme.ruby.md | 10 + 19 files changed, 2042 insertions(+), 1 deletion(-) create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/connectedClusters.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultCSPAAD.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultCSPToken.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultHPAAD.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultHPToken.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateClusterExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateClusterPrivateLinkExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateCluster_KindExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/DeleteClusterExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClusterExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClustersByResourceGroupExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClustersBySubscriptionExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetProvisionedClusterExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ListConnectedClusterOperationsExample.json create mode 100644 specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/UpdateClusterExample.json diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/connectedClusters.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/connectedClusters.json new file mode 100644 index 000000000000..08ecfbfada9e --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/connectedClusters.json @@ -0,0 +1,1134 @@ +{ + "swagger": "2.0", + "info": { + "title": "ConnectedKubernetesClient", + "version": "2024-07-01-preview", + "description": "Azure Connected Cluster Resource Provider API for onboarding a Kubernetes Cluster to Azure Arc" + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedClusters/{clusterName}": { + "put": { + "summary": "Register a new Kubernetes cluster with Azure Resource Manager.", + "operationId": "ConnectedCluster_Create", + "description": "API to register a new Kubernetes cluster and create a tracked resource in Azure Resource Manager (ARM).", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "CreateClusterExample": { + "$ref": "./examples/CreateClusterExample.json" + }, + "CreateCluster_KindExample": { + "$ref": "./examples/CreateCluster_KindExample.json" + }, + "CreateClusterPrivateLinkExample": { + "$ref": "./examples/CreateClusterPrivateLinkExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + }, + { + "in": "body", + "name": "ConnectedCluster", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectedCluster" + }, + "description": "Parameters supplied to Create a Connected Cluster." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "201": { + "description": "Resource creation request accepted", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "summary": "Updates a connected cluster.", + "operationId": "ConnectedCluster_Update", + "description": "API to update certain properties of the connected cluster resource", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "UpdateClusterExample": { + "$ref": "./examples/UpdateClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + }, + { + "in": "body", + "name": "ConnectedClusterPatch", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectedClusterPatch" + }, + "description": "Parameters supplied to update Connected Cluster." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "summary": "Get the properties of the specified connected cluster.", + "operationId": "ConnectedCluster_Get", + "description": "Returns the properties of the specified connected cluster, including name, identity, properties, and additional cluster details.", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClusterExample": { + "$ref": "./examples/GetClusterExample.json" + }, + "GetProvisionedClusterExample": { + "$ref": "./examples/GetProvisionedClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + } + ], + "responses": { + "200": { + "description": "Resource retrieved successfully.", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "summary": "Delete a connected cluster.", + "operationId": "ConnectedCluster_Delete", + "description": "Delete a connected cluster, removing the tracked resource in Azure Resource Manager (ARM).", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "DeleteClusterExample": { + "$ref": "./examples/DeleteClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Resource deletion is in progress" + }, + "204": { + "description": "The resource was not found but the request is well formed" + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedClusters/{clusterName}/listClusterUserCredential": { + "post": { + "summary": "Gets cluster user credentials of a connected cluster", + "operationId": "ConnectedCluster_ListClusterUserCredential", + "description": "Gets cluster user credentials of the connected cluster with a specified resource group and name.", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "ListClusterUserCredentialExample": { + "$ref": "./examples/ConnectedClustersListClusterCredentialResultCSPAAD.json" + }, + "ListClusterUserCredentialNonAadExample": { + "$ref": "./examples/ConnectedClustersListClusterCredentialResultCSPToken.json" + }, + "ListClusterUserCredentialCSPExample": { + "$ref": "./examples/ConnectedClustersListClusterCredentialResultHPAAD.json" + }, + "ListClusterUserCredentialNonAadCSPExample": { + "$ref": "./examples/ConnectedClustersListClusterCredentialResultHPToken.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + }, + { + "in": "body", + "required": true, + "name": "Properties", + "schema": { + "$ref": "#/definitions/ListClusterUserCredentialProperties" + }, + "description": "ListClusterUserCredential properties" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedClusters": { + "get": { + "summary": "Lists all connected clusters in the given ResourceGroup", + "operationId": "ConnectedCluster_ListByResourceGroup", + "description": "API to enumerate registered connected K8s clusters under a Resource Group", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClustersExample": { + "$ref": "./examples/GetClustersByResourceGroupExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedClusterList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kubernetes/connectedClusters": { + "get": { + "summary": "Lists all connected clusters in the given Subscription", + "operationId": "ConnectedCluster_ListBySubscription", + "description": "API to enumerate registered connected K8s clusters under a Subscription", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClustersBySubscriptionExample": { + "$ref": "./examples/GetClustersBySubscriptionExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedClusterList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Kubernetes/operations": { + "get": { + "description": "Lists all of the available API operations for Connected Cluster resource.", + "operationId": "Operations_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ListConnectedClusterOperationsExample": { + "$ref": "./examples/ListConnectedClusterOperationsExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationList": { + "type": "object", + "description": "The paginated list of connected cluster API operations.", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The list of connected cluster API operations." + }, + "nextLink": { + "type": "string", + "description": "The link to fetch the next page of connected cluster API operations." + } + } + }, + "Operation": { + "type": "object", + "description": "The Connected cluster API operation", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {Microsoft.Kubernetes}/{resource}/{operation}" + }, + "display": { + "type": "object", + "readOnly": true, + "description": "The object that represents the operation.", + "properties": { + "provider": { + "type": "string", + "description": "Service provider: Microsoft.Kubernetes" + }, + "resource": { + "type": "string", + "description": "Connected Cluster Resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "Operation type: Read, write, delete, etc." + }, + "description": { + "type": "string", + "description": "Description of the operation." + } + } + } + } + }, + "ConnectedClusterList": { + "description": "The paginated list of connected Clusters", + "type": "object", + "properties": { + "value": { + "description": "The list of connected clusters", + "type": "array", + "items": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "nextLink": { + "description": "The link to fetch the next page of connected clusters", + "type": "string" + } + } + }, + "ConnectedCluster": { + "type": "object", + "required": [ + "properties", + "identity" + ], + "properties": { + "identity": { + "$ref": "#/definitions/ConnectedClusterIdentity", + "description": "The identity of the connected cluster." + }, + "kind": { + "$ref": "#/definitions/ConnectedClusterKind", + "description": "The kind of connected cluster." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectedClusterProperties", + "description": "Describes the connected cluster resource properties." + }, + "systemData": { + "$ref": "#/definitions/SystemData", + "readOnly": true, + "description": "Metadata pertaining to creation and last modification of the resource" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "description": "Represents a connected cluster." + }, + "ConnectedClusterIdentity": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of connected cluster identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the connected cluster. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the connected cluster. The type 'SystemAssigned, includes a system created identity. The type 'None' means no identity is assigned to the connected cluster.", + "default": "SystemAssigned", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the connected cluster." + }, + "ConnectedClusterKind": { + "type": "string", + "description": "Indicates the kind of Arc connected cluster based on host infrastructure.", + "enum": [ + "ProvisionedCluster" + ], + "x-ms-enum": { + "name": "ConnectedClusterKind", + "modelAsString": true + } + }, + "ConnectedClusterProperties": { + "type": "object", + "required": [ + "agentPublicKeyCertificate" + ], + "properties": { + "agentPublicKeyCertificate": { + "type": "string", + "description": "Base64 encoded public certificate used by the agent to do the initial handshake to the backend services in Azure." + }, + "kubernetesVersion": { + "readOnly": true, + "type": "string", + "description": "The Kubernetes version of the connected cluster resource" + }, + "totalNodeCount": { + "readOnly": true, + "type": "integer", + "description": "Number of nodes present in the connected cluster resource" + }, + "totalCoreCount": { + "readOnly": true, + "format": "int32", + "type": "integer", + "description": "Number of CPU cores present in the connected cluster resource" + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "Version of the agent running on the connected cluster resource" + }, + "provisioningState": { + "$ref": "#/definitions/ConnectedClusterProvisioningState", + "description": "Provisioning state of the connected cluster resource." + }, + "distribution": { + "type": "string", + "description": "The Kubernetes distribution running on this connected cluster." + }, + "distributionVersion": { + "type": "string", + "description": "The Kubernetes distribution version on this connected cluster." + }, + "infrastructure": { + "type": "string", + "description": "The infrastructure on which the Kubernetes cluster represented by this connected cluster is running on." + }, + "offering": { + "type": "string", + "readOnly": true, + "description": "Connected cluster offering" + }, + "managedIdentityCertificateExpirationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Expiration time of the managed identity certificate" + }, + "lastConnectivityTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Time representing the last instance when heart beat was received from the cluster" + }, + "connectivityStatus": { + "type": "string", + "readOnly": true, + "description": "Represents the connectivity status of the connected cluster.", + "enum": [ + "Connecting", + "Connected", + "Offline", + "Expired" + ], + "x-ms-enum": { + "name": "ConnectivityStatus", + "modelAsString": true + } + }, + "privateLinkState": { + "type": "string", + "description": "Property which describes the state of private link on a connected cluster resource.", + "default": "Disabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PrivateLinkState", + "modelAsString": true + } + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "This is populated only if privateLinkState is enabled. The resource id of the private link scope this connected cluster is assigned to, if any." + }, + "azureHybridBenefit": { + "type": "string", + "description": "Indicates whether Azure Hybrid Benefit is opted in", + "enum": [ + "True", + "False", + "NotApplicable" + ], + "default": "NotApplicable", + "x-ms-enum": { + "name": "AzureHybridBenefit", + "modelAsString": true + } + }, + "aadProfile": { + "description": "AAD profile for the connected cluster.", + "$ref": "#/definitions/AadProfile" + }, + "arcAgentProfile": { + "description": "Arc agentry configuration for the provisioned cluster.", + "$ref": "#/definitions/ArcAgentProfile" + }, + "securityProfile": { + "description": "Security profile for the connected cluster.", + "$ref": "#/definitions/SecurityProfile" + }, + "oidcIssuerProfile": { + "description": "Open ID Connect (OIDC) Issuer Profile for the connected cluster.", + "$ref": "#/definitions/OidcIssuerProfile" + }, + "gateway": { + "description": "Details of the gateway used by the Arc router for connectivity.", + "$ref": "#/definitions/Gateway", + "x-nullable": true + }, + "arcAgentryConfigurations": { + "description": "Configuration settings for customizing the behavior of the connected cluster.", + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/ArcAgentryConfigurations" + }, + "x-nullable": true + }, + "miscellaneousProperties": { + "description": "More properties related to the Connected Cluster", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + }, + "description": "Properties of the connected cluster." + }, + "CredentialResults": { + "type": "object", + "properties": { + "hybridConnectionConfig": { + "$ref": "#/definitions/HybridConnectionConfig", + "description": "Contains the REP (rendezvous endpoint) and “Sender” access token.", + "readOnly": true + }, + "kubeconfigs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CredentialResult" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The list of credential result response." + }, + "CredentialResult": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the credential." + }, + "value": { + "type": "string", + "format": "byte", + "readOnly": true, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The credential result response." + }, + "ConnectedClusterProvisioningState": { + "type": "string", + "description": "The current deployment state of connectedClusters.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Provisioning", + "Updating", + "Deleting", + "Accepted" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "ConnectedClusterPatch": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectedClusterPatchProperties", + "description": "Describes the connected cluster resource properties that can be updated during PATCH operation." + } + }, + "description": "Object containing updates for patch operations." + }, + "ConnectedClusterPatchProperties": { + "type": "object", + "properties": { + "distribution": { + "type": "string", + "description": "Represents the distribution of the connected cluster" + }, + "distributionVersion": { + "type": "string", + "description": "Represents the Kubernetes distribution version on this connected cluster." + }, + "azureHybridBenefit": { + "type": "string", + "description": "Indicates whether Azure Hybrid Benefit is opted in", + "enum": [ + "True", + "False", + "NotApplicable" + ], + "x-ms-enum": { + "name": "AzureHybridBenefit", + "modelAsString": true + } + } + }, + "description": "Properties which can be patched on the connected cluster resource." + }, + "HybridConnectionConfig": { + "type": "object", + "description": "Contains the REP (rendezvous endpoint) and “Sender” access token.", + "properties": { + "expirationTime": { + "description": "Timestamp when this token will be expired.", + "type": "integer", + "readOnly": true, + "format": "int64" + }, + "hybridConnectionName": { + "description": "Name of the connection", + "type": "string", + "readOnly": true + }, + "relay": { + "description": "Name of the relay.", + "type": "string", + "readOnly": true + }, + "token": { + "description": "Sender access token", + "type": "string", + "readOnly": true + } + } + }, + "AadProfile": { + "type": "object", + "description": "AAD Profile specifies attributes for Azure Active Directory integration.", + "properties": { + "enableAzureRBAC": { + "type": "boolean", + "description": "Whether to enable Azure RBAC for Kubernetes authorization." + }, + "adminGroupObjectIDs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of AAD group object IDs that will have admin role of the cluster." + }, + "tenantID": { + "type": "string", + "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription." + } + } + }, + "SecurityProfile": { + "type": "object", + "description": "Security Profile specifies attributes for cluster security features.", + "properties": { + "workloadIdentity": { + "type": "object", + "description": "The workload identity feature webhook.", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether to enable or disable the workload identity Webhook" + } + } + } + } + }, + "OidcIssuerProfile": { + "type": "object", + "description": "OIDC Issuer Profile specifies attributes for workload identity integration.", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether to enable oidc issuer for workload identity integration." + }, + "issuerUrl": { + "type": "string", + "description": "The issuer url for hybrid clusters connected to Arc used for the workload identity feature.", + "readOnly": true + }, + "selfHostedIssuerUrl": { + "type": "string", + "description": "The issuer url for public cloud clusters - AKS, EKS, GKE - used for the workload identity feature." + } + } + }, + "Gateway": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether the gateway for arc router connectivity is enabled." + }, + "resourceId": { + "type": "string", + "description": "The resource ID of the gateway used for the Arc router feature." + } + } + }, + "ArcAgentryConfigurations": { + "type": "object", + "properties": { + "feature": { + "type": "string", + "description": "Specifies the name of the feature for the configuration setting." + }, + "settings": { + "type": "object", + "description": "The configuration settings for the feature that do not contain any sensitive or secret information.", + "x-nullable": true, + "additionalProperties": { + "type": "string" + } + }, + "protectedSettings": { + "type": "object", + "description": "The configuration settings for the feature that contain any sensitive or secret information.", + "x-nullable": true, + "x-ms-secret": true, + "additionalProperties": { + "type": "string" + } + } + } + }, + "ArcAgentProfile": { + "description": "Defines the Arc Agent properties for the clusters.", + "type": "object", + "properties": { + "desiredAgentVersion": { + "type": "string", + "description": "Version of the Arc agents to be installed on the cluster resource" + }, + "agentAutoUpgrade": { + "type": "string", + "description": "Indicates whether the Arc agents on the be upgraded automatically to the latest version. Defaults to Enabled.", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "AutoUpgradeOptions", + "modelAsString": true + } + }, + "systemComponents": { + "type": "array", + "description": "List of system extensions that are installed on the cluster resource.", + "items": { + "$ref": "#/definitions/SystemComponent" + } + }, + "agentErrors": { + "type": "array", + "description": "List of arc agentry and system components errors on the cluster resource.", + "items": { + "$ref": "#/definitions/AgentError" + } + }, + "agentState": { + "type": "string", + "description": "Represents the current state of the Arc agentry and its dependent components.", + "readOnly": true + } + } + }, + "AgentError": { + "description": "Agent Errors if any during agent or system component upgrade.", + "type": "object", + "properties": { + "message": { + "type": "string", + "readOnly": true, + "description": "Agent error message." + }, + "severity": { + "type": "string", + "readOnly": true, + "description": "Severity of the error message." + }, + "component": { + "type": "string", + "readOnly": true, + "description": "Agent component where error message occured." + }, + "time": { + "format": "date-time", + "description": "The timestamp of error occured (UTC).", + "type": "string", + "readOnly": true + } + } + }, + "SystemComponent": { + "description": "System extensions and its current versions installed on the cluster resource.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of the system extension" + }, + "userSpecifiedVersion": { + "type": "string", + "description": "Version of the system extension to be installed on the cluster resource." + }, + "majorVersion": { + "type": "integer", + "format": "int32", + "description": "Major Version of the system extension that is currently installed on the cluster resource." + }, + "currentVersion": { + "type": "string", + "readOnly": true, + "description": "Version of the system extension that is currently installed on the cluster resource." + } + } + }, + "SystemData": { + "description": "Metadata pertaining to creation and last modification of the resource.", + "type": "object", + "properties": { + "createdBy": { + "description": "The identity that created the resource.", + "type": "string" + }, + "createdByType": { + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "type": "string", + "x-ms-enum": { + "name": "createdByType", + "modelAsString": true + } + }, + "createdAt": { + "format": "date-time", + "description": "The timestamp of resource creation (UTC).", + "type": "string" + }, + "lastModifiedBy": { + "description": "The identity that last modified the resource.", + "type": "string" + }, + "lastModifiedByType": { + "description": "The type of identity that last modified the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "type": "string", + "x-ms-enum": { + "name": "lastModifiedByType", + "modelAsString": true + } + }, + "lastModifiedAt": { + "format": "date-time", + "description": "The timestamp of resource modification (UTC).", + "type": "string" + } + }, + "readOnly": true + }, + "ListClusterUserCredentialProperties": { + "type": "object", + "required": [ + "authenticationMethod", + "clientProxy" + ], + "properties": { + "authenticationMethod": { + "type": "string", + "description": "The mode of client authentication.", + "enum": [ + "Token", + "AAD" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "clientProxy": { + "type": "boolean", + "description": "Boolean value to indicate whether the request is for client side proxy or not" + } + }, + "description": "" + } + }, + "parameters": { + "ClusterNamePathParam": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Kubernetes cluster on which get is called.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultCSPAAD.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultCSPAAD.json new file mode 100644 index 000000000000..f407b98182f5 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultCSPAAD.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview", + "Properties": { + "authenticationMethod": "AAD", + "clientProxy": true + } + }, + "responses": { + "200": { + "body": { + "hybridConnectionConfig": { + "expirationTime": 1631196183, + "hybridConnectionName": "microsoft.kubernetes/connectedclusters/229dc73f7b07196c79a93d4362d9c7fc4ed34df3e95290d27c56cec2dbb82865/1631185383340987904", + "relay": "azgnrelay-ph0-l1", + "token": "SharedAccessSignature 123456789034675890pbduwegiavifkuw647o02423bbhfouseb" + }, + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "WVhCcFZtVnljMmx2YmpvZ2RqRU5DbU5zZFhOMFpYSnpPZzBLTFNCamJIVnpkR1Z5T2cwS0lDQWdJR05sY25ScFptbGpZWFJsTFdGMWRHaHZjbWwwZVMxa1lYUmhPaUJNVXpCMFRGTXhRMUpWWkVwVWFVSkVVbFpLVlZOVldrcFJNRVpWVWxNd2RFeFRNSFJEYXpGS1UxVldOR1ZyVGtSUldFVnlXakJHTTFOVlNrSmFNR3hTVlRKMGRWZHNXblphZWtwMVZtcEtWbU5ZWkV0amJsWllUVEZDU0dWclJrOVJiV1J5WTFkb2NtRlZZelZrZWtKRFVWWkdlbEpyUmtWUlZUUkxWRlpHZW1Rd1RsSlhWVkpYVlZaR1JWSllaRXRoYkdWc1NsRXdiSEZSVlRWRFdqSjBlR0ZIZEhCU2Vtd3pUVVZLUWxWVlZrZFJWVVpRVVRCR2JrOUZSazVUVld4RVVUSmtURkV3Um01U1ZVVXdWMWhDTlVOc1VtdFVNVkpTVTFkTmRtVnNhRVJsUjNoVFpXdFZNRg==" + } + ] + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultCSPToken.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultCSPToken.json new file mode 100644 index 000000000000..782ef800b5c9 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultCSPToken.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview", + "Properties": { + "authenticationMethod": "Token", + "clientProxy": true + } + }, + "responses": { + "200": { + "body": { + "hybridConnectionConfig": { + "expirationTime": 1631196183, + "hybridConnectionName": "microsoft.kubernetes/connectedclusters/229dc73f7b07196c79a93d4362d9c7fc4ed34df3e95290d27c56cec2dbb82865/1631185383340987904", + "relay": "azgnrelay-ph0-l1", + "token": "SharedAccessSignature 123456789034675890pbduwegiavifkuw647o02423bbhfouseb" + }, + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "WVhCcFZtVnljMmx2YmpvZ2RqRU5DbU5zZFhOMFpYSnpPZzBLTFNCamJIVnpkR1Z5T2cwS0lDQWdJR05sY25ScFptbGpZWFJsTFdGMWRHaHZjbWwwZVMxa1lYUmhPaUJNVXpCMFRGTXhRMUpWWkVwVWFVSkVVbFpLVlZOVldrcFJNRVpWVWxNd2RFeFRNSFJEYXpGS1UxVldOR1ZyVGtSUldFVnlXakJHTTFOVlNrSmFNR3hTVlRKMGRWZHNXblphZWtwMVZtcEtWbU5ZWkV0amJsWllUVEZDU0dWclJrOVJiV1J5WTFkb2NtRlZZelZrZWtKRFVWWkdlbEpyUmtWUlZUUkxWRlpHZW1Rd1RsSlhWVkpYVlZaR1JWSllaRXRoYkdWc1NsRXdiSEZSVlRWRFdqSjBlR0ZIZEhCU2Vtd3pUVVZLUWxWVlZrZFJWVVpRVVRCR2JrOUZSazVUVld4RVVUSmtURkV3Um01U1ZVVXdWMWhDTlVOc1VtdFVNVkpTVTFkTmRtVnNhRVJsUjNoVFpXdFZNRg==" + } + ] + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultHPAAD.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultHPAAD.json new file mode 100644 index 000000000000..83ad82437eee --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultHPAAD.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview", + "Properties": { + "authenticationMethod": "AAD", + "clientProxy": false + } + }, + "responses": { + "200": { + "body": { + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "WVhCcFZtVnljMmx2YmpvZ2RqRU5DbU5zZFhOMFpYSnpPZzBLTFNCamJIVnpkR1Z5T2cwS0lDQWdJR05sY25ScFptbGpZWFJsTFdGMWRHaHZjbWwwZVMxa1lYUmhPaUJNVXpCMFRGTXhRMUpWWkVwVWFVSkVVbFpLVlZOVldrcFJNRVpWVWxNd2RFeFRNSFJEYXpGS1UxVldOR1ZyVGtSUldFVnlXakJHTTFOVlNrSmFNR3hTVlRKMGRWZHNXblphZWtwMVZtcEtWbU5ZWkV0amJsWllUVEZDU0dWclJrOVJiV1J5WTFkb2NtRlZZelZrZWtKRFVWWkdlbEpyUmtWUlZUUkxWRlpHZW1Rd1RsSlhWVkpYVlZaR1JWSllaRXRoYkdWc1NsRXdiSEZSVlRWRFdqSjBlR0ZIZEhCU2Vtd3pUVVZLUWxWVlZrZFJWVVpRVVRCR2JrOUZSazVUVld4RVVUSmtURkV3Um01U1ZVVXdWMWhDTlVOc1VtdFVNVkpTVTFkTmRtVnNhRVJsUjNoVFpXdFZNRg==" + } + ] + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultHPToken.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultHPToken.json new file mode 100644 index 000000000000..6a7b59d40db1 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ConnectedClustersListClusterCredentialResultHPToken.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview", + "Properties": { + "authenticationMethod": "Token", + "clientProxy": false + } + }, + "responses": { + "200": { + "body": { + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "WVhCcFZtVnljMmx2YmpvZ2RqRU5DbU5zZFhOMFpYSnpPZzBLTFNCamJIVnpkR1Z5T2cwS0lDQWdJR05sY25ScFptbGpZWFJsTFdGMWRHaHZjbWwwZVMxa1lYUmhPaUJNVXpCMFRGTXhRMUpWWkVwVWFVSkVVbFpLVlZOVldrcFJNRVpWVWxNd2RFeFRNSFJEYXpGS1UxVldOR1ZyVGtSUldFVnlXakJHTTFOVlNrSmFNR3hTVlRKMGRWZHNXblphZWtwMVZtcEtWbU5ZWkV0amJsWllUVEZDU0dWclJrOVJiV1J5WTFkb2NtRlZZelZrZWtKRFVWWkdlbEpyUmtWUlZUUkxWRlpHZW1Rd1RsSlhWVkpYVlZaR1JWSllaRXRoYkdWc1NsRXdiSEZSVlRWRFdqSjBlR0ZIZEhCU2Vtd3pUVVZLUWxWVlZrZFJWVVpRVVRCR2JrOUZSazVUVld4RVVUSmtURkV3Um01U1ZVVXdWMWhDTlVOc1VtdFVNVkpTVTFkTmRtVnNhRVJsUjNoVFpXdFZNRg==" + } + ] + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateClusterExample.json new file mode 100644 index 000000000000..e17e24030cdb --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateClusterExample.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview", + "ConnectedCluster": { + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "provisioningState": "Succeeded", + "distribution": "AKS", + "distributionVersion": "1.0", + "azureHybridBenefit": "NotApplicable" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "provisioningState": "Accepted", + "distribution": "AKS", + "distributionVersion": "1.0", + "azureHybridBenefit": "NotApplicable" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateClusterPrivateLinkExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateClusterPrivateLinkExample.json new file mode 100644 index 000000000000..23c667043861 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateClusterPrivateLinkExample.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview", + "ConnectedCluster": { + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "provisioningState": "Succeeded", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "provisioningState": "Accepted", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateCluster_KindExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateCluster_KindExample.json new file mode 100644 index 000000000000..dca67137ecb0 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/CreateCluster_KindExample.json @@ -0,0 +1,154 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview", + "ConnectedCluster": { + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "kind": "ProvisionedCluster", + "properties": { + "agentPublicKeyCertificate": "", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0", + "aadProfile": { + "enableAzureRBAC": true, + "adminGroupObjectIDs": [ + "56f988bf-86f1-41af-91ab-2d7cd011db47" + ], + "tenantID": "82f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "oidcIssuerProfile": { + "enabled": true + }, + "arcAgentProfile": { + "desiredAgentVersion": "0.1.0", + "agentAutoUpgrade": "Enabled", + "systemComponents": [ + { + "type": "Strato", + "userSpecifiedVersion": "0.1.1", + "majorVersion": 0 + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "kind": "ProvisionedCluster", + "properties": { + "agentPublicKeyCertificate": "", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "provisioningState": "Succeeded", + "distribution": "AKS", + "distributionVersion": "1.0", + "azureHybridBenefit": "NotApplicable", + "aadProfile": { + "enableAzureRBAC": true, + "adminGroupObjectIDs": [ + "56f988bf-86f1-41af-91ab-2d7cd011db47" + ], + "tenantID": "82f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "oidcIssuerProfile": { + "enabled": true, + "issuerUrl": "https://oidcdiscovery-northamerica-endpoint-gbcge4adgqebgxev.z01.azurefd.net/885hc665-0g4a-4a4b-732b-e4950new3bed/" + }, + "arcAgentProfile": { + "desiredAgentVersion": "0.1.0", + "agentAutoUpgrade": "Enabled", + "agentState": "Succeeded", + "systemComponents": [ + { + "type": "Strato", + "userSpecifiedVersion": "0.1.1", + "currentVersion": "0.1.0", + "majorVersion": 0 + } + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "provisioningState": "Accepted", + "distribution": "AKS", + "distributionVersion": "1.0", + "azureHybridBenefit": "NotApplicable", + "aadProfile": { + "enableAzureRBAC": true, + "adminGroupObjectIDs": [ + "56f988bf-86f1-41af-91ab-2d7cd011db47" + ], + "tenantID": "82f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "oidcIssuerProfile": { + "enabled": true, + "issuerUrl": "https://oidcdiscovery-northamerica-endpoint-gbcge4adgqebgxev.z01.azurefd.net/885hc665-0g4a-4a4b-732b-e4950new3bed/" + }, + "arcAgentProfile": { + "desiredAgentVersion": "0.1.0", + "agentAutoUpgrade": "Enabled", + "agentState": "Succeeded", + "systemComponents": [ + { + "type": "Strato", + "userSpecifiedVersion": "0.1.1", + "currentVersion": "0.1.0", + "majorVersion": 0 + } + ] + } + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/DeleteClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/DeleteClusterExample.json new file mode 100644 index 000000000000..fdfbbe7feaa9 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/DeleteClusterExample.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Kubernetes/locations/eastasia/operationStatuses/eb4c5b0b-35c7-4de9-8b9c-d51bf24dd729", + "Location": "https://management.azure.com/providers/Microsoft.Kubernetes/locations/eastasia/operationStatuses/eb4c5b0b-35c7-4de9-8b9c-d51bf24dd729*B31BD6830F326F0DAC6966963A274F89A70EDF802817A03F8CC944233B6E6C2E?api-version=2024-07-01-preview&t=638325565717977058&c=MIIHADCCBeigAwIBAgITHgMjMN6vpcEQg2_WbgAAAyMw3jANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjMwODAzMDczNjQzWhcNMjQwNzI4MDczNjQzWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKtqtBNpyBDffqSjU2vKc-q1Ku3MtRBZR4VV9i6TdAcmNpVmw6W8QNgsa-z0zaqgCcjkLIFSUySU0_7_r4cjNFPDGVj0Y3gPDesFRunHaZsZoA2l235ZxgkOhmI9Eq_hgRKbBV-_zy1PbegjuigJTDOv4tC_xxRRMMioo273xgqG_kUrJVmb5EpU0OONBJtawx7E17himPHTOSCk6f__KaMY6z55v5motGTAEvs40N_pYLk36d4xWMWAfMSqoQu0fCiDTOBh9fXR1Mix28dh2is83JJOEmTls4gNVGZ4_gVn6DrVk-sPnD5sGs789lwzBSlRdpOoJMUnxOgMEgc_JB0CAwEAAaOCA-0wggPpMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MB0GA1UdDgQWBBQQBQ6aI7w4CwOrsQOypzq30e50CDAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBTxRmjG8cPwKy19i2rhsvm-NfzRQTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAD5C_x4drGztlnmLaCdpAyL9KN3LkK_sr-VeDz0s3SwQ30lixsYUUfohjlbSqgoq5GW7WmEgMVuyHCv3nUc01REq-CK7A2xlhD68sfOKqXdpPFsjDCyVEFxuigozWoM3jh9ffTPLM-0cuvpIUH3sOooWAL0Y2RpShpYCxzE7ufkpuFvrs0SPvDNxn7Ga6gYdqvqXsGni-J8I4mQ5sPmZa23Nqq3RDpkYkMunjIJkX7_3p-mX4Wcnm5j93_oLnn7WRkjMF3gwwCcJGn_2yLAeVeJ8E4TNZA2_mfmwo7zGwRDV0VT4JM6evNGxDXVG9XG3hdGlZaoe_TTL5yyWR4CmM2A&s=oBCOqB7wr6rL3h0KEYh91fsSQOpjJEXV_-trbTwQJpxCgOFmN7OStVj0qiAoxRrAIJtCZHCDQnA_JjawmDlVQM7kkXVg9mg3GSG0ucDBu-G8dqYoEoS7dQu_1GKrEpyzQXCPZ4J9QZy1wDh5MmwftdAqyJ3XjTa5AFHlmnjJJiOQ0NAp4sM94-f5_Ru5ycMUdfjItDz_JjOjzSjsl6HSWMHdjvcqGUmbc7onurDb54T5hpNuioO3ex3YH7NdKP18-i66CsOx2MfidCgL6GGOw-KcVH89BPzXY8nxVqnCE54sc0EAjoyz0FU2pESjdrvJutP4c9HJc2rCJjLkxhujCQ&h=e_aACIZc0Bg5Zoog38uTxuuAtK2U6Zd6X45h4sVfHnM" + } + }, + "204": {} + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClusterExample.json new file mode 100644 index 000000000000..0fc635f16f7f --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClusterExample.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "2d2a754c-cade-4935-83d4-ce413c5a3910", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-12-17T07:14:58.865041Z" + }, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Disabled", + "provisioningState": "Succeeded", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0", + "miscellaneousProperties": { + "createCorrelationId": "8e42616e-74dc-4117-9aaa-71ad5d0180d8", + "infrastructureVersion": "1.1" + }, + "securityProfile": { + "workloadIdentity": { + "enabled": true + } + }, + "oidcIssuerProfile": { + "enabled": true, + "issuerUrl": "https://oidcdiscovery-northamerica-endpoint-gbcge4adgqebgxev.z01.azurefd.net/885hc665-0g4a-4a4b-732b-e4950new3bed/" + }, + "arcAgentProfile": { + "desiredAgentVersion": "0.1.0", + "agentAutoUpgrade": "Enabled", + "agentState": "Failed", + "systemComponents": [ + { + "type": "Strato", + "userSpecifiedVersion": "0.1.1", + "currentVersion": "0.1.0" + } + ], + "agentErrors": [ + { + "message": "Upgrade failed for agent extension Strato, version not found", + "severity": "Error", + "component": "Strato", + "time": "2020-12-17T07:14:58.865041Z" + } + ] + } + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClustersByResourceGroupExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClustersByResourceGroupExample.json new file mode 100644 index 000000000000..81e9b899c6f3 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClustersByResourceGroupExample.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "api-version": "2024-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Disabled", + "provisioningState": "Succeeded", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0", + "miscellaneousProperties": { + "createCorrelationId": "8e42616e-74dc-4117-9aaa-71ad5d0180d8", + "infrastructureVersion": "1.1" + } + } + }, + { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "XIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.1", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "provisioningState": "Succeeded", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0", + "miscellaneousProperties": { + "createCorrelationId": "8e42616e-74dc-4117-9aaa-71ad5d0180d8", + "infrastructureVersion": "1.1" + } + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClustersBySubscriptionExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClustersBySubscriptionExample.json new file mode 100644 index 000000000000..0dbc9e1c2cb5 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetClustersBySubscriptionExample.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "api-version": "2024-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Disabled", + "provisioningState": "Succeeded", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0", + "miscellaneousProperties": { + "createCorrelationId": "8e42616e-74dc-4117-9aaa-71ad5d0180d8", + "infrastructureVersion": "1.1" + } + } + }, + { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster2", + "name": "connectedCluster2", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "sikasire@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-12-17T07:06:33.9173186Z" + }, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "XIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.16.3", + "totalNodeCount": 4, + "agentVersion": "0.1.0", + "privateLinkState": "Enabled", + "privateLinkScopeResourceId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/privateLinkScopes/privateLinkScopeName", + "provisioningState": "Succeeded", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0", + "miscellaneousProperties": { + "createCorrelationId": "8e42616e-74dc-4117-9aaa-71ad5d0180d8", + "infrastructureVersion": "1.1" + } + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetProvisionedClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetProvisionedClusterExample.json new file mode 100644 index 000000000000..97deb7f8813f --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/GetProvisionedClusterExample.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2024-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "2d2a754c-cade-4935-83d4-ce413c5a3910", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-12-17T07:14:58.865041Z" + }, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "ProvisionedCluster", + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "privateLinkState": "Disabled", + "provisioningState": "Succeeded", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0", + "aadProfile": { + "enableAzureRBAC": true, + "adminGroupObjectIDs": [ + "56f988bf-86f1-41af-91ab-2d7cd011db47" + ], + "tenantID": "82f988bf-86f1-41af-91ab-2d7cd011db47" + }, + "arcAgentProfile": { + "desiredAgentVersion": "0.1.0", + "agentAutoUpgrade": "Enabled", + "agentState": "Succeeded", + "systemComponents": [ + { + "type": "Strato", + "userSpecifiedVersion": "0.1.1", + "currentVersion": "0.1.0", + "majorVersion": 0 + } + ] + }, + "miscellaneousProperties": { + "createCorrelationId": "8e42616e-74dc-4117-9aaa-71ad5d0180d8", + "infrastructureVersion": "1.1" + } + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ListConnectedClusterOperationsExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ListConnectedClusterOperationsExample.json new file mode 100644 index 000000000000..af936a3edca8 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/ListConnectedClusterOperationsExample.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Kubernetes/connectedClusters/write", + "display": { + "provider": "Microsoft.connectedClusters", + "resource": "connectedClusters", + "operation": "Create ConnectedCluster", + "description": "Create any ConnectedCluster" + } + }, + { + "name": "Microsoft.Kubernetes/connectedClusters/read", + "display": { + "provider": "Microsoft.Kubernetes", + "resource": "connectedClusters", + "operation": "Get ConnectedCluster", + "description": "Get any ConnectedCluster" + } + }, + { + "name": "Microsoft.Kubernetes/connectedClusters/delete", + "display": { + "provider": "Microsoft.Kubernetes", + "resource": "connectedClusters", + "operation": "Delete ConnectedCluster", + "description": "Delete any ConnectedCluster" + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/UpdateClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/UpdateClusterExample.json new file mode 100644 index 000000000000..0b3dfa6da321 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2024-07-01-preview/examples/UpdateClusterExample.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "ConnectedClusterPatch": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/1bfbb5d0-917e-4346-9026-1d3b344417f5/resourceGroups/akkeshar/providers/Microsoft.Kubernetes/connectedClusters/connectedCluster1", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "systemData": { + "createdBy": "sikasire@microsoft.com", + "createdByType": "User", + "createdAt": "2020-12-17T07:06:33.9173186Z", + "lastModifiedBy": "2d2a754c-cade-4935-83d4-ce413c5a3910", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-12-17T07:14:58.865041Z" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "provisioningState": "Succeeded", + "azureHybridBenefit": "NotApplicable", + "distribution": "AKS", + "distributionVersion": "1.0", + "miscellaneousProperties": { + "createCorrelationId": "8e42616e-74dc-4117-9aaa-71ad5d0180d8", + "infrastructureVersion": "1.1" + } + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/readme.go.md b/specification/hybridkubernetes/resource-manager/readme.go.md index e86d054f3122..db3aebf46671 100644 --- a/specification/hybridkubernetes/resource-manager/readme.go.md +++ b/specification/hybridkubernetes/resource-manager/readme.go.md @@ -26,6 +26,7 @@ batch: - tag: package-2021-10-01 - tag: package-2022-05-01-preview - tag: package-2022-10-01-preview + - tag: package-2024-07-01-preview ``` ### Tag: package-2020-01-01-preview and go @@ -81,4 +82,13 @@ Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2024-07-01-preview' && $(go) +namespace: hybridkubernetes +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2024-07-01-preview/$(namespace) ``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.java.md b/specification/hybridkubernetes/resource-manager/readme.java.md index 393cd5abf1e0..d31caaf9a313 100644 --- a/specification/hybridkubernetes/resource-manager/readme.java.md +++ b/specification/hybridkubernetes/resource-manager/readme.java.md @@ -23,6 +23,7 @@ batch: - tag: package-2021-10-01 - tag: package-2022-05-01-preview - tag: package-2022-10-01-preview + - tag: package-2024-07-01-preview ``` ### Tag: package-2020-01-01-preview and java @@ -97,3 +98,15 @@ java: regenerate-manager: true generate-interface: true ``` +### Tag: package-2024-07-01-preview and java + +These settings apply only when `--tag=package-2024-07-01-preview` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2024-07-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.hybridkubernetes.v2024_07_01_preview + output-folder: $(azure-libraries-for-java-folder)/hybridkubernetes/resource-manager/v2024_07_01_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.md b/specification/hybridkubernetes/resource-manager/readme.md index ec1567f476d2..0d8fced280ca 100644 --- a/specification/hybridkubernetes/resource-manager/readme.md +++ b/specification/hybridkubernetes/resource-manager/readme.md @@ -27,7 +27,16 @@ These are the global settings for the Kubernetes Connect RP. ``` yaml openapi-type: arm openapi-subtype: rpaas -tag: package-2024-01 +tag: package-2024-07-01-preview +``` + +### Tag: package-2024-07-01-preview + +These settings apply only when `--tag=package-2024-07-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2024-07-01-preview' +input-file: + - Microsoft.Kubernetes/preview/2024-07-01-preview/connectedClusters.json ``` ### Tag: package-preview-2024-06-01 diff --git a/specification/hybridkubernetes/resource-manager/readme.ruby.md b/specification/hybridkubernetes/resource-manager/readme.ruby.md index 11979830cf94..3df813d2d4cc 100644 --- a/specification/hybridkubernetes/resource-manager/readme.ruby.md +++ b/specification/hybridkubernetes/resource-manager/readme.ruby.md @@ -19,6 +19,7 @@ batch: - tag: package-2021-10-01 - tag: package-2022-05-01-preview - tag: package-2022-10-01-preview + - tag: package-2024-07-01-preview ``` ### Tag: package-2020-01-01-preview and ruby @@ -51,6 +52,11 @@ Please also specify `--ruby-sdks-folder=`. +### Tag: package-2024-07-01-preview and ruby + +These settings apply only when `--tag=package-2024-07-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + ```yaml $(tag) == 'package-2020-01-01-preview' && $(ruby) namespace: "Azure::Kubernetes::Mgmt::V2020_01_01_preview" output-folder: $(ruby-sdks-folder)/management/azure_mgmt_hybridkubernetes/lib @@ -74,4 +80,8 @@ output-folder: $(ruby-sdks-folder)/management/azure_mgmt_hybridkubernetes/lib ```yaml $(tag) == 'package-2022-10-01-preview' && $(ruby) namespace: "Azure::Kubernetes::Mgmt::V2022_10_01_preview" output-folder: $(ruby-sdks-folder)/management/azure_mgmt_hybridkubernetes/lib +``` +```yaml $(tag) == 'package-2024-07-01-preview' && $(ruby) +namespace: "Azure::Kubernetes::Mgmt::V2024_07_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_hybridkubernetes/lib ``` \ No newline at end of file From 356aa5174e8eec6ed904bf5ff104595aec8c0411 Mon Sep 17 00:00:00 2001 From: yzt Date: Tue, 25 Jun 2024 11:07:02 +0800 Subject: [PATCH 15/52] Add Web PubSub data plane version 2024-01-01 (#29445) * Add Web PubSub data plane version 2024-01-01 * Add Web PubSub data plane version 2024-01-01 --------- Co-authored-by: Liangying.Wei --- .../examples/HealthApi_GetServiceStatus.json | 8 + .../WebPubSub_AddConnectionToGroup.json | 11 + .../WebPubSub_AddConnectionsToGroups.json | 16 + .../examples/WebPubSub_AddUserToGroup.json | 11 + .../examples/WebPubSub_CheckPermission.json | 13 + .../WebPubSub_CloseAllConnections.json | 10 + .../examples/WebPubSub_CloseConnection.json | 11 + .../WebPubSub_CloseGroupConnections.json | 11 + .../WebPubSub_CloseUserConnections.json | 11 + .../examples/WebPubSub_ConnectionExists.json | 11 + .../WebPubSub_GenerateClientToken.json | 16 + .../examples/WebPubSub_GrantPermission.json | 12 + .../examples/WebPubSub_GroupExists.json | 11 + ...bPubSub_RemoveConnectionFromAllGroups.json | 10 + .../WebPubSub_RemoveConnectionFromGroup.json | 11 + ...WebPubSub_RemoveConnectionsFromGroups.json | 16 + .../WebPubSub_RemoveUserFromAllGroups.json | 10 + .../WebPubSub_RemoveUserFromGroup.json | 11 + .../examples/WebPubSub_RevokePermission.json | 12 + .../examples/WebPubSub_SendToAll.json | 12 + .../examples/WebPubSub_SendToConnection.json | 12 + .../examples/WebPubSub_SendToGroup.json | 13 + .../examples/WebPubSub_SendToUser.json | 13 + .../examples/WebPubSub_UserExists.json | 11 + .../stable/2024-01-01/webpubsub.json | 1836 +++++++++++++++++ specification/webpubsub/data-plane/readme.md | 13 +- 26 files changed, 2130 insertions(+), 2 deletions(-) create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/HealthApi_GetServiceStatus.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddConnectionToGroup.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddConnectionsToGroups.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddUserToGroup.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CheckPermission.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseAllConnections.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseConnection.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseGroupConnections.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseUserConnections.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_ConnectionExists.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GenerateClientToken.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GrantPermission.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GroupExists.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionFromAllGroups.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionFromGroup.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionsFromGroups.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveUserFromAllGroups.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveUserFromGroup.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RevokePermission.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToAll.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToConnection.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToGroup.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToUser.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_UserExists.json create mode 100644 specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/webpubsub.json diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/HealthApi_GetServiceStatus.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/HealthApi_GetServiceStatus.json new file mode 100644 index 000000000000..c3fad1730f70 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/HealthApi_GetServiceStatus.json @@ -0,0 +1,8 @@ +{ + "parameters": { + "api-version": "2024-01-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddConnectionToGroup.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddConnectionToGroup.json new file mode 100644 index 000000000000..c50287566ac8 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddConnectionToGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "group": "group1", + "connectionId": "connection1" + }, + "responses": { + "200": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddConnectionsToGroups.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddConnectionsToGroups.json new file mode 100644 index 000000000000..305f1102db5f --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddConnectionsToGroups.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "groupsToAdd": { + "groups": [ + "group1", + "group2" + ], + "filter": "startswith(userId, 'listener-')" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddUserToGroup.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddUserToGroup.json new file mode 100644 index 000000000000..6e80ae590e77 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_AddUserToGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "group": "group1", + "userId": "user1" + }, + "responses": { + "200": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CheckPermission.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CheckPermission.json new file mode 100644 index 000000000000..be403af4609d --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CheckPermission.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "permission": "joinLeaveGroup", + "connectionId": "connection1", + "targetName": "group1" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseAllConnections.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseAllConnections.json new file mode 100644 index 000000000000..5f4ea0292c7a --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseAllConnections.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "reason": "Close reason" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseConnection.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseConnection.json new file mode 100644 index 000000000000..93229123e499 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseConnection.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "connectionId": "connection1", + "reason": "Close reason" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseGroupConnections.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseGroupConnections.json new file mode 100644 index 000000000000..404152162a21 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseGroupConnections.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "group": "group1", + "reason": "Close reason" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseUserConnections.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseUserConnections.json new file mode 100644 index 000000000000..1fcbe8c55ccf --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_CloseUserConnections.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "userId": "user1", + "reason": "Close reason" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_ConnectionExists.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_ConnectionExists.json new file mode 100644 index 000000000000..b41ebcbd154b --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_ConnectionExists.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "connectionId": "connection1" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GenerateClientToken.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GenerateClientToken.json new file mode 100644 index 000000000000..8b1015fd4af3 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GenerateClientToken.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "userId": "user1", + "minutesToExpire": 5, + "clientType": "MQTT" + }, + "responses": { + "200": { + "body": { + "token": "ABCDEFG.ABC.ABC" + } + } + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GrantPermission.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GrantPermission.json new file mode 100644 index 000000000000..0403b11d4b18 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GrantPermission.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "permission": "joinLeaveGroup", + "connectionId": "connection1", + "targetName": "group1" + }, + "responses": { + "200": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GroupExists.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GroupExists.json new file mode 100644 index 000000000000..115192951e37 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_GroupExists.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "group": "group1" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionFromAllGroups.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionFromAllGroups.json new file mode 100644 index 000000000000..920740eaa52c --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionFromAllGroups.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "connectionId": "connection1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionFromGroup.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionFromGroup.json new file mode 100644 index 000000000000..87714ae3c64d --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionFromGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "group": "group1", + "connectionId": "connection1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionsFromGroups.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionsFromGroups.json new file mode 100644 index 000000000000..5002c2094f97 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveConnectionsFromGroups.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "groupsToRemove": { + "groups": [ + "group1", + "group2" + ], + "filter": "startswith(userId, 'listener-')" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveUserFromAllGroups.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveUserFromAllGroups.json new file mode 100644 index 000000000000..30ea8539b82c --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveUserFromAllGroups.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "userId": "user1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveUserFromGroup.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveUserFromGroup.json new file mode 100644 index 000000000000..c56fedbd16f8 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RemoveUserFromGroup.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "group": "group1", + "userId": "user1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RevokePermission.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RevokePermission.json new file mode 100644 index 000000000000..650e07438ced --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_RevokePermission.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "permission": "joinLeaveGroup", + "connectionId": "connection1", + "targetName": "group1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToAll.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToAll.json new file mode 100644 index 000000000000..33caf69c17f1 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToAll.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "filter": "startswith(userId, 'listener-')", + "messageTtlSeconds": 15, + "message": "Message to send" + }, + "responses": { + "202": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToConnection.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToConnection.json new file mode 100644 index 000000000000..2d301e49865a --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToConnection.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "connectionId": "connection1", + "messageTtlSeconds": 15, + "message": "Message to send" + }, + "responses": { + "202": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToGroup.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToGroup.json new file mode 100644 index 000000000000..9ba0d31b7197 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToGroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "group": "group1", + "filter": "startswith(userId, 'listener-')", + "messageTtlSeconds": 15, + "message": "Message to send" + }, + "responses": { + "202": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToUser.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToUser.json new file mode 100644 index 000000000000..f9601e0dd30d --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_SendToUser.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "userId": "user1", + "filter": "startswith(userId, 'listener-')", + "messageTtlSeconds": 15, + "message": "Message to send" + }, + "responses": { + "202": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_UserExists.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_UserExists.json new file mode 100644 index 000000000000..510390d7eb85 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/examples/WebPubSub_UserExists.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "hub": "hub1", + "userId": "user1" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/webpubsub.json b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/webpubsub.json new file mode 100644 index 000000000000..795ca4ec0138 --- /dev/null +++ b/specification/webpubsub/data-plane/WebPubSub/stable/2024-01-01/webpubsub.json @@ -0,0 +1,1836 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Web PubSub Service REST API", + "version": "2024-01-01" + }, + "paths": { + "/api/health": { + "head": { + "tags": [ + "general" + ], + "summary": "Get service health status.", + "operationId": "HealthApi_GetServiceStatus", + "parameters": [ + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The service is healthy" + }, + "default": { + "description": "Error response" + } + }, + "x-ms-examples": { + "HealthApi_GetServiceStatus": { + "$ref": "./examples/HealthApi_GetServiceStatus.json" + } + } + } + }, + "/api/hubs/{hub}/:addToGroups": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Add filtered connections to multiple groups.", + "operationId": "WebPubSub_AddConnectionsToGroups", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "groupsToAdd", + "description": "Target groups and connection filter.", + "required": true, + "schema": { + "$ref": "#/definitions/AddToGroupsRequest" + } + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_AddConnectionsToGroups": { + "$ref": "./examples/WebPubSub_AddConnectionsToGroups.json" + } + } + } + }, + "/api/hubs/{hub}/:closeConnections": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Close the connections in the hub.", + "operationId": "WebPubSub_CloseAllConnections", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "query", + "name": "excluded", + "description": "Exclude these connectionIds when closing the connections in the hub.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "reason", + "description": "The reason closing the client connection.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_CloseAllConnections": { + "$ref": "./examples/WebPubSub_CloseAllConnections.json" + } + } + } + }, + "/api/hubs/{hub}/:generateToken": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Generate token for the client to connect Azure Web PubSub service.", + "operationId": "WebPubSub_GenerateClientToken", + "produces": [ + "text/plain", + "application/json", + "text/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "query", + "name": "userId", + "description": "User Id.", + "type": "string" + }, + { + "in": "query", + "name": "role", + "description": "Roles that the connection with the generated token will have.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "minutesToExpire", + "description": "The expire time of the generated token.", + "type": "integer", + "format": "int32", + "default": 60, + "minimum": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "group", + "description": "Groups that the connection will join when it connects.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "clientType", + "description": "The type of client. Case-insensitive. If not set, it's \"Default\". For Web PubSub for Socket.IO, only the default value is supported. For Web PubSub, the valid values are 'Default' and 'MQTT'.", + "type": "string", + "default": "Default", + "enum": [ + "Default", + "MQTT" + ], + "x-ms-enum": { + "name": "WebPubSubClientType", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ClientTokenResponse" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_GenerateClientToken": { + "$ref": "./examples/WebPubSub_GenerateClientToken.json" + } + } + } + }, + "/api/hubs/{hub}/:removeFromGroups": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Remove filtered connections from multiple groups.", + "operationId": "WebPubSub_RemoveConnectionsFromGroups", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "groupsToRemove", + "description": "Target groups and connection filter.", + "required": true, + "schema": { + "$ref": "#/definitions/RemoveFromGroupsRequest" + } + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_RemoveConnectionsFromGroups": { + "$ref": "./examples/WebPubSub_RemoveConnectionsFromGroups.json" + } + } + } + }, + "/api/hubs/{hub}/:send": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Broadcast content inside request body to all the connected client connections.", + "operationId": "WebPubSub_SendToAll", + "consumes": [ + "application/octet-stream", + "text/plain", + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "query", + "name": "excluded", + "description": "Excluded connection Ids.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "message", + "description": "The payload body.", + "required": true, + "schema": { + "format": "binary", + "type": "string" + } + }, + { + "in": "query", + "name": "filter", + "description": "Following OData filter syntax to filter out the subscribers receiving the messages.", + "type": "string" + }, + { + "in": "query", + "name": "messageTtlSeconds", + "description": "The time-to-live (TTL) value in seconds for messages sent to the service. 0 is the default value, which means the message never expires. 300 is the maximum value. If this parameter is non-zero, messages that are not consumed by the client within the specified TTL will be dropped by the service. This parameter can help when the client's bandwidth is limited.", + "type": "integer", + "format": "int32", + "maximum": 300, + "minimum": 0 + } + ], + "responses": { + "202": { + "description": "The message is accepted. The service follows fire-and-forget pattern when sending messages." + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_SendToAll": { + "$ref": "./examples/WebPubSub_SendToAll.json" + } + } + } + }, + "/api/hubs/{hub}/connections/{connectionId}": { + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Close the client connection.", + "operationId": "WebPubSub_CloseConnection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "reason", + "description": "The reason closing the client connection.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_CloseConnection": { + "$ref": "./examples/WebPubSub_CloseConnection.json" + } + } + }, + "head": { + "tags": [ + "webpubsub" + ], + "summary": "Check if the connection with the given connectionId exists.", + "operationId": "WebPubSub_ConnectionExists", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "connectionId", + "description": "The connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_ConnectionExists": { + "$ref": "./examples/WebPubSub_ConnectionExists.json" + } + } + } + }, + "/api/hubs/{hub}/connections/{connectionId}/:send": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Send content inside request body to the specific connection.", + "operationId": "WebPubSub_SendToConnection", + "consumes": [ + "application/octet-stream", + "text/plain", + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "connectionId", + "description": "The connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "message", + "description": "The payload body.", + "required": true, + "schema": { + "format": "binary", + "type": "string" + } + }, + { + "in": "query", + "name": "messageTtlSeconds", + "description": "The time-to-live (TTL) value in seconds for messages sent to the service. 0 is the default value, which means the message never expires. 300 is the maximum value. If this parameter is non-zero, messages that are not consumed by the client within the specified TTL will be dropped by the service. This parameter can help when the client's bandwidth is limited.", + "type": "integer", + "format": "int32", + "maximum": 300, + "minimum": 0 + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_SendToConnection": { + "$ref": "./examples/WebPubSub_SendToConnection.json" + } + } + } + }, + "/api/hubs/{hub}/connections/{connectionId}/groups": { + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Remove a connection from all groups.", + "operationId": "WebPubSub_RemoveConnectionFromAllGroups", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "The connection is removed from all groups." + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_RemoveConnectionFromAllGroups": { + "$ref": "./examples/WebPubSub_RemoveConnectionFromAllGroups.json" + } + } + } + }, + "/api/hubs/{hub}/groups/{group}": { + "head": { + "tags": [ + "webpubsub" + ], + "summary": "Check if there are any client connections inside the given group", + "operationId": "WebPubSub_GroupExists", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1, + "pattern": "^(?!\\s+$).+$" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_GroupExists": { + "$ref": "./examples/WebPubSub_GroupExists.json" + } + } + } + }, + "/api/hubs/{hub}/groups/{group}/:closeConnections": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Close connections in the specific group.", + "operationId": "WebPubSub_CloseGroupConnections", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1, + "pattern": "^(?!\\s+$).+$" + }, + { + "in": "query", + "name": "excluded", + "description": "Exclude these connectionIds when closing the connections in the group.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "reason", + "description": "The reason closing the client connection.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_CloseGroupConnections": { + "$ref": "./examples/WebPubSub_CloseGroupConnections.json" + } + } + } + }, + "/api/hubs/{hub}/groups/{group}/:send": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Send content inside request body to a group of connections.", + "operationId": "WebPubSub_SendToGroup", + "consumes": [ + "application/octet-stream", + "text/plain", + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1, + "pattern": "^(?!\\s+$).+$" + }, + { + "in": "query", + "name": "excluded", + "description": "Excluded connection Ids", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "message", + "description": "The payload body.", + "required": true, + "schema": { + "format": "binary", + "type": "string" + } + }, + { + "in": "query", + "name": "filter", + "description": "Following OData filter syntax to filter out the subscribers receiving the messages.", + "type": "string" + }, + { + "in": "query", + "name": "messageTtlSeconds", + "description": "The time-to-live (TTL) value in seconds for messages sent to the service. 0 is the default value, which means the message never expires. 300 is the maximum value. If this parameter is non-zero, messages that are not consumed by the client within the specified TTL will be dropped by the service. This parameter can help when the client's bandwidth is limited.", + "type": "integer", + "format": "int32", + "maximum": 300, + "minimum": 0 + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_SendToGroup": { + "$ref": "./examples/WebPubSub_SendToGroup.json" + } + } + } + }, + "/api/hubs/{hub}/groups/{group}/connections/{connectionId}": { + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Remove a connection from the target group.", + "operationId": "WebPubSub_RemoveConnectionFromGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1, + "pattern": "^(?!\\s+$).+$" + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_RemoveConnectionFromGroup": { + "$ref": "./examples/WebPubSub_RemoveConnectionFromGroup.json" + } + } + }, + "put": { + "tags": [ + "webpubsub" + ], + "summary": "Add a connection to the target group.", + "operationId": "WebPubSub_AddConnectionToGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1, + "pattern": "^(?!\\s+$).+$" + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_AddConnectionToGroup": { + "$ref": "./examples/WebPubSub_AddConnectionToGroup.json" + } + } + } + }, + "/api/hubs/{hub}/permissions/{permission}/connections/{connectionId}": { + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Revoke permission for the connection.", + "operationId": "WebPubSub_RevokePermission", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "permission", + "description": "The permission: current supported actions are joinLeaveGroup and sendToGroup.", + "required": true, + "type": "string", + "enum": [ + "sendToGroup", + "joinLeaveGroup" + ], + "x-ms-enum": { + "name": "WebPubSubPermission", + "modelAsString": true + } + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "targetName", + "description": "The meaning of the target depends on the specific permission. For joinLeaveGroup and sendToGroup, targetName is a required parameter standing for the group name.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_RevokePermission": { + "$ref": "./examples/WebPubSub_RevokePermission.json" + } + } + }, + "head": { + "tags": [ + "webpubsub" + ], + "summary": "Check if a connection has permission to the specified action.", + "operationId": "WebPubSub_CheckPermission", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "permission", + "description": "The permission: current supported actions are joinLeaveGroup and sendToGroup.", + "required": true, + "type": "string", + "enum": [ + "sendToGroup", + "joinLeaveGroup" + ], + "x-ms-enum": { + "name": "WebPubSubPermission", + "modelAsString": true + } + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "targetName", + "description": "The meaning of the target depends on the specific permission. For joinLeaveGroup and sendToGroup, targetName is a required parameter standing for the group name.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_CheckPermission": { + "$ref": "./examples/WebPubSub_CheckPermission.json" + } + } + }, + "put": { + "tags": [ + "webpubsub" + ], + "summary": "Grant permission to the connection.", + "operationId": "WebPubSub_GrantPermission", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "permission", + "description": "The permission: current supported actions are joinLeaveGroup and sendToGroup.", + "required": true, + "type": "string", + "enum": [ + "sendToGroup", + "joinLeaveGroup" + ], + "x-ms-enum": { + "name": "WebPubSubPermission", + "modelAsString": true + } + }, + { + "in": "path", + "name": "connectionId", + "description": "Target connection Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "targetName", + "description": "The meaning of the target depends on the specific permission. For joinLeaveGroup and sendToGroup, targetName is a required parameter standing for the group name.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_GrantPermission": { + "$ref": "./examples/WebPubSub_GrantPermission.json" + } + } + } + }, + "/api/hubs/{hub}/users/{userId}": { + "head": { + "tags": [ + "webpubsub" + ], + "summary": "Check if there are any client connections connected for the given user.", + "operationId": "WebPubSub_UserExists", + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "userId", + "description": "Target user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response", + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_UserExists": { + "$ref": "./examples/WebPubSub_UserExists.json" + } + } + } + }, + "/api/hubs/{hub}/users/{userId}/:closeConnections": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Close connections for the specific user.", + "operationId": "WebPubSub_CloseUserConnections", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "userId", + "description": "The user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "excluded", + "description": "Exclude these connectionIds when closing the connections for the user.", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi" + }, + { + "in": "query", + "name": "reason", + "description": "The reason closing the client connection.", + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_CloseUserConnections": { + "$ref": "./examples/WebPubSub_CloseUserConnections.json" + } + } + } + }, + "/api/hubs/{hub}/users/{userId}/:send": { + "post": { + "tags": [ + "webpubsub" + ], + "summary": "Send content inside request body to the specific user.", + "operationId": "WebPubSub_SendToUser", + "consumes": [ + "application/octet-stream", + "text/plain", + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "userId", + "description": "The user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "message", + "description": "The payload body.", + "required": true, + "schema": { + "format": "binary", + "type": "string" + } + }, + { + "in": "query", + "name": "filter", + "description": "Following OData filter syntax to filter out the subscribers receiving the messages.", + "type": "string" + }, + { + "in": "query", + "name": "messageTtlSeconds", + "description": "The time-to-live (TTL) value in seconds for messages sent to the service. 0 is the default value, which means the message never expires. 300 is the maximum value. If this parameter is non-zero, messages that are not consumed by the client within the specified TTL will be dropped by the service. This parameter can help when the client's bandwidth is limited.", + "type": "integer", + "format": "int32", + "maximum": 300, + "minimum": 0 + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_SendToUser": { + "$ref": "./examples/WebPubSub_SendToUser.json" + } + } + } + }, + "/api/hubs/{hub}/users/{userId}/groups": { + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Remove a user from all groups.", + "operationId": "WebPubSub_RemoveUserFromAllGroups", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "userId", + "description": "Target user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "The user is removed from all groups." + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_RemoveUserFromAllGroups": { + "$ref": "./examples/WebPubSub_RemoveUserFromAllGroups.json" + } + } + } + }, + "/api/hubs/{hub}/users/{userId}/groups/{group}": { + "delete": { + "tags": [ + "webpubsub" + ], + "summary": "Remove a user from the target group.", + "operationId": "WebPubSub_RemoveUserFromGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1, + "pattern": "^(?!\\s+$).+$" + }, + { + "in": "path", + "name": "userId", + "description": "Target user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "The user is removed from the group." + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_RemoveUserFromGroup": { + "$ref": "./examples/WebPubSub_RemoveUserFromGroup.json" + } + } + }, + "put": { + "tags": [ + "webpubsub" + ], + "summary": "Add a user to the target group.", + "operationId": "WebPubSub_AddUserToGroup", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "hub", + "description": "Target hub name, which should start with alphabetic characters and only contain alpha-numeric characters or underscore.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9_`,.[\\]]{0,127}$" + }, + { + "in": "path", + "name": "group", + "description": "Target group name, which length should be greater than 0 and less than 1025.", + "required": true, + "type": "string", + "maxLength": 1024, + "minLength": 1, + "pattern": "^(?!\\s+$).+$" + }, + { + "in": "path", + "name": "userId", + "description": "Target user Id.", + "required": true, + "type": "string", + "minLength": 1 + }, + { + "in": "query", + "name": "api-version", + "description": "The version of the REST APIs.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-error-response": true, + "headers": { + "x-ms-error-code": { + "x-ms-client-name": "ErrorCode", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "WebPubSub_AddUserToGroup": { + "$ref": "./examples/WebPubSub_AddUserToGroup.json" + } + } + } + } + }, + "definitions": { + "AddToGroupsRequest": { + "description": "The request object containing targets groups and a connection filter", + "type": "object", + "properties": { + "groups": { + "description": "A list of groups which target connections will be added into", + "type": "array", + "items": { + "type": "string" + } + }, + "filter": { + "description": "An OData filter which target connections satisfy", + "type": "string" + } + } + }, + "ClientTokenResponse": { + "description": "The response object containing the token for the client", + "type": "object", + "properties": { + "token": { + "description": "The token value for the WebSocket client to connect to the service", + "type": "string" + } + } + }, + "ErrorDetail": { + "description": "The error object.", + "type": "object", + "properties": { + "code": { + "description": "One of a server-defined set of error codes.", + "type": "string" + }, + "message": { + "description": "A human-readable representation of the error.", + "type": "string" + }, + "target": { + "description": "The target of the error.", + "type": "string" + }, + "details": { + "description": "An array of details about specific errors that led to this reported error.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + }, + "inner": { + "$ref": "#/definitions/InnerError" + } + } + }, + "InnerError": { + "type": "object", + "properties": { + "code": { + "description": "A more specific error code than was provided by the containing error.", + "type": "string" + }, + "inner": { + "$ref": "#/definitions/InnerError" + } + } + }, + "RemoveFromGroupsRequest": { + "description": "The request object containing targets groups and a connection filter", + "type": "object", + "properties": { + "groups": { + "description": "A list of groups which target connections will be removed from", + "type": "array", + "items": { + "type": "string" + } + }, + "filter": { + "description": "An OData filter which target connections satisfy", + "type": "string" + } + } + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "name": "endpoint", + "description": "HTTP or HTTPS endpoint for the Web PubSub service instance.", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "format": "url", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + } +} diff --git a/specification/webpubsub/data-plane/readme.md b/specification/webpubsub/data-plane/readme.md index 2af5241e4544..40c7969ad221 100644 --- a/specification/webpubsub/data-plane/readme.md +++ b/specification/webpubsub/data-plane/readme.md @@ -26,7 +26,7 @@ These are the global settings for the Web PubSub Service API. ``` yaml openapi-type: data-plane -tag: package-2023-07-01 +tag: package-2024-01 ``` ### Suppression @@ -40,14 +40,23 @@ directive: ``` +### Tag: package-2024-01 + +These settings apply only when `--tag=package-2024-01` is specified on the command line. + +```yaml $(tag) == 'package-2024-01' +input-file: + - WebPubSub/stable/2024-01-01/webpubsub.json +``` ### Tag: package-2023-07-01 These settings apply only when `--tag=package-2023-07-01` is specified on the command line. -```yaml $(tag) == 'package-2023-07-01' +``` yaml $(tag) == 'package-2023-07-01' input-file: - WebPubSub/stable/2023-07-01/webpubsub.json ``` + ### Tag: package-2022-11-01 These settings apply only when `--tag=package-2022-11-01` is specified on the command line. From 3aef2f96202eec656fca4abc4df0fbfe10b89ac0 Mon Sep 17 00:00:00 2001 From: Mitesh Shah <58204159+mitsha-microsoft@users.noreply.github.com> Date: Tue, 25 Jun 2024 10:35:35 +0530 Subject: [PATCH 16/52] Added 2023-12-01 preview API for Azure Load Testing Control Plane (#29543) * Added 2023-12-01 API Specs and Initial Examples * Added validated examples * Changes in the README and Provisioning State Suppression * Format changes * Pattern on resource names --- .../LoadTestMappings_CreateOrUpdate.json | 58 + .../LoadTestMappings_Delete.json | 13 + .../LoadTestMappings_Get.json | 31 + .../LoadTestMappings_List.json | 34 + .../LoadTestMappings_Update.json | 34 + ...oadTestProfileMappings_CreateOrUpdate.json | 57 + .../LoadTestProfileMappings_Delete.json | 13 + .../LoadTestProfileMappings_Get.json | 31 + .../LoadTestProfileMappings_List.json | 34 + .../LoadTestProfileMappings_Update.json | 34 + .../LoadTests_CreateOrUpdate.json | 121 ++ .../2023-12-01-preview/LoadTests_Delete.json | 18 + .../2023-12-01-preview/LoadTests_Get.json | 36 + .../LoadTests_ListByResourceGroup.json | 39 + .../LoadTests_ListBySubscription.json | 38 + ...tOutboundNetworkDependenciesEndpoints.json | 110 ++ .../2023-12-01-preview/LoadTests_Update.json | 82 + .../2023-12-01-preview/Operations_List.json | 46 + .../Quotas_CheckAvailability.json | 34 + .../2023-12-01-preview/Quotas_Get.json | 23 + .../2023-12-01-preview/Quotas_List.json | 26 + .../LoadTestService.Management/main.tsp | 3 + .../LoadTestService.Management/models.tsp | 61 + .../LoadTestService.Management/routes.tsp | 45 + .../LoadTestMappings_CreateOrUpdate.json | 58 + .../examples/LoadTestMappings_Delete.json | 13 + .../examples/LoadTestMappings_Get.json | 31 + .../examples/LoadTestMappings_List.json | 34 + .../examples/LoadTestMappings_Update.json | 34 + ...oadTestProfileMappings_CreateOrUpdate.json | 57 + .../LoadTestProfileMappings_Delete.json | 13 + .../examples/LoadTestProfileMappings_Get.json | 31 + .../LoadTestProfileMappings_List.json | 34 + .../LoadTestProfileMappings_Update.json | 34 + .../examples/LoadTests_CreateOrUpdate.json | 121 ++ .../examples/LoadTests_Delete.json | 18 + .../examples/LoadTests_Get.json | 36 + .../LoadTests_ListByResourceGroup.json | 39 + .../LoadTests_ListBySubscription.json | 38 + ...tOutboundNetworkDependenciesEndpoints.json | 110 ++ .../examples/LoadTests_Update.json | 82 + .../examples/Operations_List.json | 46 + .../examples/Quotas_CheckAvailability.json | 34 + .../examples/Quotas_Get.json | 23 + .../examples/Quotas_List.json | 26 + .../2023-12-01-preview/loadtestservice.json | 1728 +++++++++++++++++ .../resource-manager/readme.md | 9 + 47 files changed, 3670 insertions(+) create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_CreateOrUpdate.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Delete.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Get.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_List.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Update.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_CreateOrUpdate.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Delete.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Get.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_List.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Update.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_CreateOrUpdate.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Delete.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Get.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListByResourceGroup.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListBySubscription.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListOutboundNetworkDependenciesEndpoints.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Update.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Operations_List.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_CheckAvailability.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_Get.json create mode 100644 specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_List.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_CreateOrUpdate.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Delete.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Get.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_List.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Update.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_CreateOrUpdate.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Delete.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Get.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_List.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Update.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_CreateOrUpdate.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Delete.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Get.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListByResourceGroup.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListBySubscription.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListOutboundNetworkDependenciesEndpoints.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Update.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Operations_List.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_CheckAvailability.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_Get.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_List.json create mode 100644 specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/loadtestservice.json diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_CreateOrUpdate.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_CreateOrUpdate.json new file mode 100644 index 000000000000..b6847087411c --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_CreateOrUpdate.json @@ -0,0 +1,58 @@ +{ + "title": "Create a Load Test Mapping Resource", + "operationId": "LoadTestMappings_CreateOrUpdate", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestMappingName": "myLoadTestMapping", + "resource": { + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1002", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:34:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Delete.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Delete.json new file mode 100644 index 000000000000..688176e1f150 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Delete.json @@ -0,0 +1,13 @@ +{ + "title": "Delete a Load Test Mapping Resource", + "operationId": "LoadTestMappings_Delete", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestMappingName": "myLoadTestMapping" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Get.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Get.json new file mode 100644 index 000000000000..aa5753eb2617 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Get.json @@ -0,0 +1,31 @@ +{ + "title": "Get a Load Test Mapping Resource", + "operationId": "LoadTestMappings_Get", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestMappingName": "myLoadTestMapping" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_List.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_List.json new file mode 100644 index 000000000000..18e0a5a192ba --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_List.json @@ -0,0 +1,34 @@ +{ + "title": "List all Load Test Mappings by Source Resource Id", + "operationId": "LoadTestMappings_List", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Update.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Update.json new file mode 100644 index 000000000000..2b20b6300fb6 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestMappings_Update.json @@ -0,0 +1,34 @@ +{ + "title": "Update a load test mapping", + "operationId": "LoadTestMappings_Update", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestMappingName": "myLoadTestMapping", + "properties": { + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_CreateOrUpdate.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_CreateOrUpdate.json new file mode 100644 index 000000000000..b99bbc3a7a0d --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_CreateOrUpdate.json @@ -0,0 +1,57 @@ +{ + "title": "Create a Load Test Profile Mappings resource", + "operationId": "LoadTestProfileMappings_CreateOrUpdate", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestProfileMappingName": "myLoadTestProfileMapping", + "resource": { + "properties": { + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1002", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:34:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Delete.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Delete.json new file mode 100644 index 000000000000..1c9ac22a0fc8 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Delete.json @@ -0,0 +1,13 @@ +{ + "title": "Delete a Load Test Profile Mapping Resource", + "operationId": "LoadTestProfileMappings_Delete", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestProfileMappingName": "myLoadTestProfileMapping" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Get.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Get.json new file mode 100644 index 000000000000..6450e5fa2b39 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Get.json @@ -0,0 +1,31 @@ +{ + "title": "Get a Load Test Profile Mapping Resource", + "operationId": "LoadTestProfileMappings_Get", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestProfileMappingName": "myLoadTestProfileMapping" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_List.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_List.json new file mode 100644 index 000000000000..f6b7653dadc5 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_List.json @@ -0,0 +1,34 @@ +{ + "title": "List Load Test Profile Mappings by Source Resource Id", + "operationId": "LoadTestProfileMappings_List", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Update.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Update.json new file mode 100644 index 000000000000..060d356dc29c --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTestProfileMappings_Update.json @@ -0,0 +1,34 @@ +{ + "title": "Update a Load Test Profile Mapping", + "operationId": "LoadTestProfileMappings_Update", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestProfileMappingName": "myLoadTestProfileMapping", + "properties": { + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_CreateOrUpdate.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_CreateOrUpdate.json new file mode 100644 index 000000000000..f84b7a9864a8 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_CreateOrUpdate.json @@ -0,0 +1,121 @@ +{ + "operationId": "LoadTests_CreateOrUpdate", + "title": "Create a LoadTestResource", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg", + "loadTestName": "myLoadTest", + "LoadTestResource": { + "location": "westus", + "tags": { + "Team": "Dev Exp" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "description": "This is new load test resource", + "encryption": { + "identity": { + "type": "UserAssigned", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1" + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "12345678-1234-1234-1234-123456789012", + "tenantId": "12345678-1234-1234-4321-123456789012", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "12345678-1234-4321-1234-123456789012", + "clientId": "12345678-4321-1234-1234-123456789012" + } + } + }, + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded", + "encryption": { + "identity": { + "type": "UserAssigned", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1" + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.loadtestservice/locations/WESTUS/operationStatuses/abc?api-version=2022-12-01" + }, + "body": { + "location": "westus", + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "12345678-1234-1234-1234-123456789012", + "tenantId": "12345678-1234-1234-4321-123456789012", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "12345678-1234-4321-1234-123456789012", + "clientId": "12345678-4321-1234-1234-123456789012" + } + } + }, + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded", + "encryption": { + "identity": { + "type": "UserAssigned", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1" + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Delete.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Delete.json new file mode 100644 index 000000000000..d2f5cd404d13 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Delete.json @@ -0,0 +1,18 @@ +{ + "operationId": "LoadTests_Delete", + "title": "Delete a LoadTestResource.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg", + "loadTestName": "myLoadTest" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.loadtestservice/locations/WESTUS/operationStatuses/abc?api-version=2022-12-01" + } + }, + "204": {} + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Get.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Get.json new file mode 100644 index 000000000000..d659ec05396f --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Get.json @@ -0,0 +1,36 @@ +{ + "operationId": "LoadTests_Get", + "title": "Get a LoadTestResource.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg", + "loadTestName": "myLoadTest" + }, + "responses": { + "200": { + "body": { + "location": "westus", + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListByResourceGroup.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListByResourceGroup.json new file mode 100644 index 000000000000..f90482ffb4d7 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListByResourceGroup.json @@ -0,0 +1,39 @@ +{ + "operationId": "LoadTests_ListByResourceGroup", + "title": "List LoadTestResource resources by resource group.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "westus", + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListBySubscription.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListBySubscription.json new file mode 100644 index 000000000000..3f5cead7f3b3 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListBySubscription.json @@ -0,0 +1,38 @@ +{ + "operationId": "LoadTests_ListBySubscription", + "title": "List LoadTestResource resources by subscription ID.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "westus", + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListOutboundNetworkDependenciesEndpoints.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListOutboundNetworkDependenciesEndpoints.json new file mode 100644 index 000000000000..2ed76648276e --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_ListOutboundNetworkDependenciesEndpoints.json @@ -0,0 +1,110 @@ +{ + "operationId": "LoadTests_ListOutboundNetworkDependenciesEndpoints", + "title": "Lists the endpoints that agents may call as part of load testing.", + "parameters": { + "loadTestName": "sampleloadtest", + "resourceGroupName": "default-azureloadtest-japaneast", + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "category": "Azure Batch", + "endpoints": [ + { + "domainName": "sampleacct.japaneast.batch.azure.com", + "description": "Applicable to job manager tasks, tasks that use job scoped authentication, or any task that makes calls to Batch.", + "endpointDetails": [ + { + "port": 443 + } + ] + }, + { + "domainName": "japaneast.service.batch.azure.com", + "description": "Applicable to all Azure Batch pools.", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + }, + { + "category": "Azure Storage", + "endpoints": [ + { + "domainName": "autostorageaccountname.blob.core.windows.net", + "description": "AutoStorage endpoint for this Batch account. Applicable to all Azure Batch pools under this account.", + "endpointDetails": [ + { + "port": 443 + } + ] + }, + { + "domainName": "*.blob.core.windows.net", + "description": "Applicable to all Azure Batch pools.", + "endpointDetails": [ + { + "port": 443 + } + ] + }, + { + "domainName": "*.table.core.windows.net", + "description": "Applicable to all Azure Batch pools.", + "endpointDetails": [ + { + "port": 443 + } + ] + }, + { + "domainName": "*.queue.core.windows.net", + "description": "Applicable to all Azure Batch pools.", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + }, + { + "category": "Microsoft Package Repository", + "endpoints": [ + { + "domainName": "packages.microsoft.com", + "description": "Only applicable to pools containing a Mount Configuration. Learn about Mount Configurations in Batch at https://docs.microsoft.com/azure/batch/virtual-file-mount.", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + }, + { + "category": "Azure Key Vault", + "endpoints": [ + { + "domainName": "*.vault.azure.net", + "description": "Only applicable to pools containing a Disk Encryption Configuration and whose VM size does not support encryption at host. Learn more about disk encryption in Azure Batch at https://docs.microsoft.com/azure/batch/disk-encryption. Learn more about encryption at host and supported VM sizes at https://docs.microsoft.com/azure/virtual-machines/disks-enable-host-based-encryption-portal.", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Update.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Update.json new file mode 100644 index 000000000000..489575c0460f --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/LoadTests_Update.json @@ -0,0 +1,82 @@ +{ + "operationId": "LoadTests_Update", + "title": "Update a LoadTestResource.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg", + "loadTestName": "myLoadTest", + "LoadTestResourcePatchRequestBody": { + "tags": { + "Team": "Dev Exp", + "Division": "LT" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "description": "This is new load test resource", + "encryption": { + "identity": { + "type": "SystemAssigned", + "resourceId": null + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "12345678-1234-1234-1234-123456789012", + "tenantId": "12345678-1234-1234-4321-123456789012", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "12345678-1234-4321-1234-123456789012", + "clientId": "12345678-4321-1234-1234-123456789012" + } + } + }, + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded", + "encryption": { + "identity": { + "type": "SystemAssigned", + "resourceId": null + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp", + "Division": "LT" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.loadtestservice/locations/WESTUS/operationStatuses/abc?api-version=2022-12-01" + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Operations_List.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Operations_List.json new file mode 100644 index 000000000000..a9a5c1b3ab76 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Operations_List.json @@ -0,0 +1,46 @@ +{ + "operationId": "Operations_List", + "title": "List the operations for the provider.", + "parameters": { + "api-version": "2023-12-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.LoadTestService/loadTests/Write", + "isDataAction": false, + "display": { + "provider": "Microsoft.LoadTestService", + "resource": "loadTests", + "operation": "Creates or updates the LoadTests", + "description": "Set LoadTests" + } + }, + { + "name": "Microsoft.LoadTestService/loadTests/Delete", + "isDataAction": false, + "display": { + "provider": "Microsoft.LoadTestService", + "resource": "loadTests", + "operation": "Deletes the LoadTests", + "description": "Delete LoadTests" + } + }, + { + "name": "Microsoft.LoadTestService/loadTests/Read", + "isDataAction": false, + "display": { + "provider": "Microsoft.LoadTestService", + "resource": "loadTests", + "operation": "Reads the LoadTests", + "description": "Read LoadTests" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_CheckAvailability.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_CheckAvailability.json new file mode 100644 index 000000000000..29cab6ade828 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_CheckAvailability.json @@ -0,0 +1,34 @@ +{ + "operationId": "Quotas_CheckAvailability", + "title": "Check Quota Availability on quota bucket per region per subscription.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "westus", + "quotaBucketName": "testQuotaBucket", + "QuotaBucketRequest": { + "properties": { + "currentUsage": 20, + "currentQuota": 40, + "newQuota": 50, + "dimensions": { + "subscriptionId": "testsubscriptionId", + "location": "westus" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.LoadTestService/locations/westus/quotas/testQuotaBucket", + "name": "testQuotaBucket", + "type": "Microsoft.LoadTestService/locations/quotas", + "properties": { + "isAvailable": false, + "availabilityStatus": "The requested quota is currently unavailable. Please request for different quota, or upgrade subscription offer type and try again later." + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_Get.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_Get.json new file mode 100644 index 000000000000..6b42bcc0c58c --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_Get.json @@ -0,0 +1,23 @@ +{ + "operationId": "Quotas_Get", + "title": "Get the available quota for a quota bucket per region per subscription.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "westus", + "quotaBucketName": "testQuotaBucket" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.LoadTestService/locations/westus/quotas/testQuotaBucket", + "name": "testQuotaBucket", + "type": "Microsoft.LoadTestService/locations/quotas", + "properties": { + "limit": 50, + "usage": 20 + } + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_List.json b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_List.json new file mode 100644 index 000000000000..75900512c036 --- /dev/null +++ b/specification/loadtestservice/LoadTestService.Management/examples/2023-12-01-preview/Quotas_List.json @@ -0,0 +1,26 @@ +{ + "operationId": "Quotas_List", + "title": "List quotas for a given subscription Id.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "westus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.LoadTestService/locations/westus/quotas/testQuotaBucket", + "name": "testQuotaBucket", + "type": "Microsoft.LoadTestService/locations/quotas", + "properties": { + "limit": 50, + "usage": 20 + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/LoadTestService.Management/main.tsp b/specification/loadtestservice/LoadTestService.Management/main.tsp index 23a0a7a2d980..662f0efca706 100644 --- a/specification/loadtestservice/LoadTestService.Management/main.tsp +++ b/specification/loadtestservice/LoadTestService.Management/main.tsp @@ -26,4 +26,7 @@ enum APIVersions { @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2022_12_01: "2022-12-01", + + @doc("The 2023-12-01-preview version of the Azure Load Testing Resource manager API.") + v2023_12_01_preview: "2023-12-01-preview", } diff --git a/specification/loadtestservice/LoadTestService.Management/models.tsp b/specification/loadtestservice/LoadTestService.Management/models.tsp index a84ddca037e3..9f6f2d084916 100644 --- a/specification/loadtestservice/LoadTestService.Management/models.tsp +++ b/specification/loadtestservice/LoadTestService.Management/models.tsp @@ -26,6 +26,67 @@ model LoadTestResource is TrackedResource { ...ManagedServiceIdentityProperty; } +@extensionResource +@doc("LoadTest mapping resource details") +@added(APIVersions.v2023_12_01_preview) +model LoadTestMappingResource is ProxyResource { + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-name-pattern" "Existing API" + @doc("Load Test Mapping name") + @key("loadTestMappingName") + @path + @segment("loadTestMappings") + @pattern("^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$") + name: string; +} + +#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state" "Operations on the resource are sync" +@doc("Azure LoadTest mapping resource properties.") +@added(APIVersions.v2023_12_01_preview) +model LoadTestMappingProperties { + @doc("Mapped source resource Id.") + @maxLength(1024) + sourceResourceId?: string; + + @doc("Mapped Azure Load Test resource Id.") + @maxLength(1024) + azureLoadTestingResourceId?: string; + + @doc("Mapped Azure Load Test resource test-id.") + @maxLength(256) + testId?: string; +} + +@extensionResource +@doc("LoadTest profile mapping resource details") +@added(APIVersions.v2023_12_01_preview) +model LoadTestProfileMappingResource + is ProxyResource { + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-name-pattern" "Existing API" + @doc("Load Test Profile Mapping name") + @key("loadTestProfileMappingName") + @path + @segment("loadTestProfileMappings") + @pattern("^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$") + name: string; +} + +#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state" "Operations on the resource are sync" +@doc("Azure LoadTest profile mapping resource properties.") +@added(APIVersions.v2023_12_01_preview) +model LoadTestProfileMappingProperties { + @doc("Mapped source resource Id.") + @maxLength(1024) + sourceResourceId?: string; + + @doc("Mapped Azure Load Test resource Id.") + @maxLength(1024) + azureLoadTestingResourceId?: string; + + @doc("Mapped Azure Load Test resource test-profile-id.") + @maxLength(60) + testProfileId?: string; +} + @doc("Resources provisioning states.") union ResourceState { string, diff --git a/specification/loadtestservice/LoadTestService.Management/routes.tsp b/specification/loadtestservice/LoadTestService.Management/routes.tsp index 22f4caa9240c..c42dca33c8df 100644 --- a/specification/loadtestservice/LoadTestService.Management/routes.tsp +++ b/specification/loadtestservice/LoadTestService.Management/routes.tsp @@ -5,6 +5,7 @@ import "@azure-tools/typespec-azure-resource-manager"; using Azure.ResourceManager; using OpenAPI; +using TypeSpec.Versioning; namespace Microsoft.LoadTestService; @@ -74,3 +75,47 @@ interface Quotas { CheckQuotaAvailabilityResponse >; } + +@armResourceOperations +interface LoadTestMappings { + @added(APIVersions.v2023_12_01_preview) + createOrUpdate is ArmResourceCreateOrReplaceSync; + + @added(APIVersions.v2023_12_01_preview) + get is ArmResourceRead; + + @added(APIVersions.v2023_12_01_preview) + delete is ArmResourceDeleteSync; + + #suppress "@azure-tools/typespec-azure-resource-manager/lro-location-header" "Existing API" + @added(APIVersions.v2023_12_01_preview) + update is ArmResourcePatchSync< + LoadTestMappingResource, + LoadTestMappingProperties + >; + + @added(APIVersions.v2023_12_01_preview) + listByScope is ArmResourceListByParent; +} + +@armResourceOperations +interface LoadTestProfileMappings { + @added(APIVersions.v2023_12_01_preview) + createOrUpdate is ArmResourceCreateOrReplaceSync; + + @added(APIVersions.v2023_12_01_preview) + get is ArmResourceRead; + + @added(APIVersions.v2023_12_01_preview) + delete is ArmResourceDeleteSync; + + #suppress "@azure-tools/typespec-azure-resource-manager/lro-location-header" "Existing API" + @added(APIVersions.v2023_12_01_preview) + update is ArmResourcePatchSync< + LoadTestProfileMappingResource, + LoadTestProfileMappingProperties + >; + + @added(APIVersions.v2023_12_01_preview) + listByScope is ArmResourceListByParent; +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_CreateOrUpdate.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_CreateOrUpdate.json new file mode 100644 index 000000000000..b6847087411c --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_CreateOrUpdate.json @@ -0,0 +1,58 @@ +{ + "title": "Create a Load Test Mapping Resource", + "operationId": "LoadTestMappings_CreateOrUpdate", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestMappingName": "myLoadTestMapping", + "resource": { + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1002", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:34:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Delete.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Delete.json new file mode 100644 index 000000000000..688176e1f150 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Delete.json @@ -0,0 +1,13 @@ +{ + "title": "Delete a Load Test Mapping Resource", + "operationId": "LoadTestMappings_Delete", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestMappingName": "myLoadTestMapping" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Get.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Get.json new file mode 100644 index 000000000000..aa5753eb2617 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Get.json @@ -0,0 +1,31 @@ +{ + "title": "Get a Load Test Mapping Resource", + "operationId": "LoadTestMappings_Get", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestMappingName": "myLoadTestMapping" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_List.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_List.json new file mode 100644 index 000000000000..18e0a5a192ba --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_List.json @@ -0,0 +1,34 @@ +{ + "title": "List all Load Test Mappings by Source Resource Id", + "operationId": "LoadTestMappings_List", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Update.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Update.json new file mode 100644 index 000000000000..2b20b6300fb6 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestMappings_Update.json @@ -0,0 +1,34 @@ +{ + "title": "Update a load test mapping", + "operationId": "LoadTestMappings_Update", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestMappingName": "myLoadTestMapping", + "properties": { + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestMappings/myLoadTestMapping", + "name": "myLoadTestMapping", + "type": "Microsoft.LoadTestService/loadTestMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_CreateOrUpdate.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_CreateOrUpdate.json new file mode 100644 index 000000000000..b99bbc3a7a0d --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_CreateOrUpdate.json @@ -0,0 +1,57 @@ +{ + "title": "Create a Load Test Profile Mappings resource", + "operationId": "LoadTestProfileMappings_CreateOrUpdate", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestProfileMappingName": "myLoadTestProfileMapping", + "resource": { + "properties": { + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1002", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:34:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Delete.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Delete.json new file mode 100644 index 000000000000..1c9ac22a0fc8 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Delete.json @@ -0,0 +1,13 @@ +{ + "title": "Delete a Load Test Profile Mapping Resource", + "operationId": "LoadTestProfileMappings_Delete", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestProfileMappingName": "myLoadTestProfileMapping" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Get.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Get.json new file mode 100644 index 000000000000..6450e5fa2b39 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Get.json @@ -0,0 +1,31 @@ +{ + "title": "Get a Load Test Profile Mapping Resource", + "operationId": "LoadTestProfileMappings_Get", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestProfileMappingName": "myLoadTestProfileMapping" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_List.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_List.json new file mode 100644 index 000000000000..f6b7653dadc5 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_List.json @@ -0,0 +1,34 @@ +{ + "title": "List Load Test Profile Mappings by Source Resource Id", + "operationId": "LoadTestProfileMappings_List", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Update.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Update.json new file mode 100644 index 000000000000..060d356dc29c --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTestProfileMappings_Update.json @@ -0,0 +1,34 @@ +{ + "title": "Update a Load Test Profile Mapping", + "operationId": "LoadTestProfileMappings_Update", + "parameters": { + "api-version": "2023-12-01-preview", + "resourceUri": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "loadTestProfileMappingName": "myLoadTestProfileMapping", + "properties": { + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename/providers/Microsoft.LoadTestService/loadTestProfileMappings/myLoadTestProfileMapping", + "name": "myLoadTestProfileMapping", + "type": "Microsoft.LoadTestService/loadTestProfileMappings", + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + }, + "properties": { + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.Web/sites/sitename", + "azureLoadTestingResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "testProfileId": "123456" + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_CreateOrUpdate.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_CreateOrUpdate.json new file mode 100644 index 000000000000..f84b7a9864a8 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_CreateOrUpdate.json @@ -0,0 +1,121 @@ +{ + "operationId": "LoadTests_CreateOrUpdate", + "title": "Create a LoadTestResource", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg", + "loadTestName": "myLoadTest", + "LoadTestResource": { + "location": "westus", + "tags": { + "Team": "Dev Exp" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "description": "This is new load test resource", + "encryption": { + "identity": { + "type": "UserAssigned", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1" + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "12345678-1234-1234-1234-123456789012", + "tenantId": "12345678-1234-1234-4321-123456789012", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "12345678-1234-4321-1234-123456789012", + "clientId": "12345678-4321-1234-1234-123456789012" + } + } + }, + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded", + "encryption": { + "identity": { + "type": "UserAssigned", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1" + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.loadtestservice/locations/WESTUS/operationStatuses/abc?api-version=2022-12-01" + }, + "body": { + "location": "westus", + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "12345678-1234-1234-1234-123456789012", + "tenantId": "12345678-1234-1234-4321-123456789012", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "12345678-1234-4321-1234-123456789012", + "clientId": "12345678-4321-1234-1234-123456789012" + } + } + }, + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded", + "encryption": { + "identity": { + "type": "UserAssigned", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1" + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Delete.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Delete.json new file mode 100644 index 000000000000..d2f5cd404d13 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Delete.json @@ -0,0 +1,18 @@ +{ + "operationId": "LoadTests_Delete", + "title": "Delete a LoadTestResource.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg", + "loadTestName": "myLoadTest" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.loadtestservice/locations/WESTUS/operationStatuses/abc?api-version=2022-12-01" + } + }, + "204": {} + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Get.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Get.json new file mode 100644 index 000000000000..d659ec05396f --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Get.json @@ -0,0 +1,36 @@ +{ + "operationId": "LoadTests_Get", + "title": "Get a LoadTestResource.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg", + "loadTestName": "myLoadTest" + }, + "responses": { + "200": { + "body": { + "location": "westus", + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListByResourceGroup.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListByResourceGroup.json new file mode 100644 index 000000000000..f90482ffb4d7 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListByResourceGroup.json @@ -0,0 +1,39 @@ +{ + "operationId": "LoadTests_ListByResourceGroup", + "title": "List LoadTestResource resources by resource group.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "westus", + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListBySubscription.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListBySubscription.json new file mode 100644 index 000000000000..3f5cead7f3b3 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListBySubscription.json @@ -0,0 +1,38 @@ +{ + "operationId": "LoadTests_ListBySubscription", + "title": "List LoadTestResource resources by subscription ID.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "westus", + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListOutboundNetworkDependenciesEndpoints.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListOutboundNetworkDependenciesEndpoints.json new file mode 100644 index 000000000000..2ed76648276e --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_ListOutboundNetworkDependenciesEndpoints.json @@ -0,0 +1,110 @@ +{ + "operationId": "LoadTests_ListOutboundNetworkDependenciesEndpoints", + "title": "Lists the endpoints that agents may call as part of load testing.", + "parameters": { + "loadTestName": "sampleloadtest", + "resourceGroupName": "default-azureloadtest-japaneast", + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "category": "Azure Batch", + "endpoints": [ + { + "domainName": "sampleacct.japaneast.batch.azure.com", + "description": "Applicable to job manager tasks, tasks that use job scoped authentication, or any task that makes calls to Batch.", + "endpointDetails": [ + { + "port": 443 + } + ] + }, + { + "domainName": "japaneast.service.batch.azure.com", + "description": "Applicable to all Azure Batch pools.", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + }, + { + "category": "Azure Storage", + "endpoints": [ + { + "domainName": "autostorageaccountname.blob.core.windows.net", + "description": "AutoStorage endpoint for this Batch account. Applicable to all Azure Batch pools under this account.", + "endpointDetails": [ + { + "port": 443 + } + ] + }, + { + "domainName": "*.blob.core.windows.net", + "description": "Applicable to all Azure Batch pools.", + "endpointDetails": [ + { + "port": 443 + } + ] + }, + { + "domainName": "*.table.core.windows.net", + "description": "Applicable to all Azure Batch pools.", + "endpointDetails": [ + { + "port": 443 + } + ] + }, + { + "domainName": "*.queue.core.windows.net", + "description": "Applicable to all Azure Batch pools.", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + }, + { + "category": "Microsoft Package Repository", + "endpoints": [ + { + "domainName": "packages.microsoft.com", + "description": "Only applicable to pools containing a Mount Configuration. Learn about Mount Configurations in Batch at https://docs.microsoft.com/azure/batch/virtual-file-mount.", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + }, + { + "category": "Azure Key Vault", + "endpoints": [ + { + "domainName": "*.vault.azure.net", + "description": "Only applicable to pools containing a Disk Encryption Configuration and whose VM size does not support encryption at host. Learn more about disk encryption in Azure Batch at https://docs.microsoft.com/azure/batch/disk-encryption. Learn more about encryption at host and supported VM sizes at https://docs.microsoft.com/azure/virtual-machines/disks-enable-host-based-encryption-portal.", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Update.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Update.json new file mode 100644 index 000000000000..489575c0460f --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/LoadTests_Update.json @@ -0,0 +1,82 @@ +{ + "operationId": "LoadTests_Update", + "title": "Update a LoadTestResource.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "dummyrg", + "loadTestName": "myLoadTest", + "LoadTestResourcePatchRequestBody": { + "tags": { + "Team": "Dev Exp", + "Division": "LT" + }, + "identity": { + "type": "SystemAssigned,UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {} + } + }, + "properties": { + "description": "This is new load test resource", + "encryption": { + "identity": { + "type": "SystemAssigned", + "resourceId": null + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "westus", + "identity": { + "type": "SystemAssigned,UserAssigned", + "principalId": "12345678-1234-1234-1234-123456789012", + "tenantId": "12345678-1234-1234-4321-123456789012", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "12345678-1234-4321-1234-123456789012", + "clientId": "12345678-4321-1234-1234-123456789012" + } + } + }, + "properties": { + "description": "This is new load test resource", + "dataPlaneURI": "https://myLoadTest.00000000-0000-0000-0000-000000000000.cnt-dp.domain.com", + "provisioningState": "Succeeded", + "encryption": { + "identity": { + "type": "SystemAssigned", + "resourceId": null + }, + "keyUrl": "https://dummy.vault.azure.net/keys/dummykey1" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.LoadTestService/loadTests/myLoadTest", + "name": "myLoadTest", + "type": "Microsoft.LoadTestService/loadTests", + "tags": { + "Team": "Dev Exp", + "Division": "LT" + }, + "systemData": { + "createdBy": "userId1001", + "createdByType": "User", + "createdAt": "2021-09-28T12:32:33Z", + "lastModifiedBy": "userId1001", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-09-28T12:32:33Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.loadtestservice/locations/WESTUS/operationStatuses/abc?api-version=2022-12-01" + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Operations_List.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..a9a5c1b3ab76 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Operations_List.json @@ -0,0 +1,46 @@ +{ + "operationId": "Operations_List", + "title": "List the operations for the provider.", + "parameters": { + "api-version": "2023-12-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.LoadTestService/loadTests/Write", + "isDataAction": false, + "display": { + "provider": "Microsoft.LoadTestService", + "resource": "loadTests", + "operation": "Creates or updates the LoadTests", + "description": "Set LoadTests" + } + }, + { + "name": "Microsoft.LoadTestService/loadTests/Delete", + "isDataAction": false, + "display": { + "provider": "Microsoft.LoadTestService", + "resource": "loadTests", + "operation": "Deletes the LoadTests", + "description": "Delete LoadTests" + } + }, + { + "name": "Microsoft.LoadTestService/loadTests/Read", + "isDataAction": false, + "display": { + "provider": "Microsoft.LoadTestService", + "resource": "loadTests", + "operation": "Reads the LoadTests", + "description": "Read LoadTests" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_CheckAvailability.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_CheckAvailability.json new file mode 100644 index 000000000000..29cab6ade828 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_CheckAvailability.json @@ -0,0 +1,34 @@ +{ + "operationId": "Quotas_CheckAvailability", + "title": "Check Quota Availability on quota bucket per region per subscription.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "westus", + "quotaBucketName": "testQuotaBucket", + "QuotaBucketRequest": { + "properties": { + "currentUsage": 20, + "currentQuota": 40, + "newQuota": 50, + "dimensions": { + "subscriptionId": "testsubscriptionId", + "location": "westus" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.LoadTestService/locations/westus/quotas/testQuotaBucket", + "name": "testQuotaBucket", + "type": "Microsoft.LoadTestService/locations/quotas", + "properties": { + "isAvailable": false, + "availabilityStatus": "The requested quota is currently unavailable. Please request for different quota, or upgrade subscription offer type and try again later." + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_Get.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_Get.json new file mode 100644 index 000000000000..6b42bcc0c58c --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_Get.json @@ -0,0 +1,23 @@ +{ + "operationId": "Quotas_Get", + "title": "Get the available quota for a quota bucket per region per subscription.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "westus", + "quotaBucketName": "testQuotaBucket" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.LoadTestService/locations/westus/quotas/testQuotaBucket", + "name": "testQuotaBucket", + "type": "Microsoft.LoadTestService/locations/quotas", + "properties": { + "limit": 50, + "usage": 20 + } + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_List.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_List.json new file mode 100644 index 000000000000..75900512c036 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/examples/Quotas_List.json @@ -0,0 +1,26 @@ +{ + "operationId": "Quotas_List", + "title": "List quotas for a given subscription Id.", + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "westus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.LoadTestService/locations/westus/quotas/testQuotaBucket", + "name": "testQuotaBucket", + "type": "Microsoft.LoadTestService/locations/quotas", + "properties": { + "limit": 50, + "usage": 20 + } + } + ] + } + } + } +} diff --git a/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/loadtestservice.json b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/loadtestservice.json new file mode 100644 index 000000000000..86864978e6a7 --- /dev/null +++ b/specification/loadtestservice/resource-manager/Microsoft.LoadTestService/preview/2023-12-01-preview/loadtestservice.json @@ -0,0 +1,1728 @@ +{ + "swagger": "2.0", + "info": { + "title": "LoadTest Client", + "version": "2023-12-01-preview", + "description": "LoadTest client provides access to LoadTest Resource and it's status operations.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "tags": [ + { + "name": "Operations" + }, + { + "name": "LoadTests" + }, + { + "name": "Quotas" + }, + { + "name": "LoadTestMappings" + }, + { + "name": "LoadTestProfileMappings" + } + ], + "paths": { + "/{resourceUri}/providers/Microsoft.LoadTestService/loadTestMappings": { + "get": { + "operationId": "LoadTestMappings_List", + "tags": [ + "LoadTestMappings" + ], + "description": "List LoadTestMappingResource resources by parent", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestMappingResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List all Load Test Mappings by Source Resource Id": { + "$ref": "./examples/LoadTestMappings_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{resourceUri}/providers/Microsoft.LoadTestService/loadTestMappings/{loadTestMappingName}": { + "get": { + "operationId": "LoadTestMappings_Get", + "tags": [ + "LoadTestMappings" + ], + "description": "Get a LoadTestMappingResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + }, + { + "name": "loadTestMappingName", + "in": "path", + "description": "Load Test Mapping name", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestMappingResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a Load Test Mapping Resource": { + "$ref": "./examples/LoadTestMappings_Get.json" + } + } + }, + "put": { + "operationId": "LoadTestMappings_CreateOrUpdate", + "tags": [ + "LoadTestMappings" + ], + "description": "Create a LoadTestMappingResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + }, + { + "name": "loadTestMappingName", + "in": "path", + "description": "Load Test Mapping name", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" + }, + { + "name": "resource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/LoadTestMappingResource" + } + } + ], + "responses": { + "200": { + "description": "Resource 'LoadTestMappingResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/LoadTestMappingResource" + } + }, + "201": { + "description": "Resource 'LoadTestMappingResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/LoadTestMappingResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a Load Test Mapping Resource": { + "$ref": "./examples/LoadTestMappings_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "LoadTestMappings_Update", + "tags": [ + "LoadTestMappings" + ], + "description": "Update a LoadTestMappingResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + }, + { + "name": "loadTestMappingName", + "in": "path", + "description": "Load Test Mapping name", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" + }, + { + "name": "properties", + "in": "body", + "description": "The resource properties to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/LoadTestMappingResourceUpdate" + } + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestMappingResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a load test mapping": { + "$ref": "./examples/LoadTestMappings_Update.json" + } + } + }, + "delete": { + "operationId": "LoadTestMappings_Delete", + "tags": [ + "LoadTestMappings" + ], + "description": "Delete a LoadTestMappingResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + }, + { + "name": "loadTestMappingName", + "in": "path", + "description": "Load Test Mapping name", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Load Test Mapping Resource": { + "$ref": "./examples/LoadTestMappings_Delete.json" + } + } + } + }, + "/{resourceUri}/providers/Microsoft.LoadTestService/loadTestProfileMappings": { + "get": { + "operationId": "LoadTestProfileMappings_List", + "tags": [ + "LoadTestProfileMappings" + ], + "description": "List LoadTestProfileMappingResource resources by parent", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestProfileMappingResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List Load Test Profile Mappings by Source Resource Id": { + "$ref": "./examples/LoadTestProfileMappings_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{resourceUri}/providers/Microsoft.LoadTestService/loadTestProfileMappings/{loadTestProfileMappingName}": { + "get": { + "operationId": "LoadTestProfileMappings_Get", + "tags": [ + "LoadTestProfileMappings" + ], + "description": "Get a LoadTestProfileMappingResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + }, + { + "name": "loadTestProfileMappingName", + "in": "path", + "description": "Load Test Profile Mapping name", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestProfileMappingResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a Load Test Profile Mapping Resource": { + "$ref": "./examples/LoadTestProfileMappings_Get.json" + } + } + }, + "put": { + "operationId": "LoadTestProfileMappings_CreateOrUpdate", + "tags": [ + "LoadTestProfileMappings" + ], + "description": "Create a LoadTestProfileMappingResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + }, + { + "name": "loadTestProfileMappingName", + "in": "path", + "description": "Load Test Profile Mapping name", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" + }, + { + "name": "resource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/LoadTestProfileMappingResource" + } + } + ], + "responses": { + "200": { + "description": "Resource 'LoadTestProfileMappingResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/LoadTestProfileMappingResource" + } + }, + "201": { + "description": "Resource 'LoadTestProfileMappingResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/LoadTestProfileMappingResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a Load Test Profile Mappings resource": { + "$ref": "./examples/LoadTestProfileMappings_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "LoadTestProfileMappings_Update", + "tags": [ + "LoadTestProfileMappings" + ], + "description": "Update a LoadTestProfileMappingResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + }, + { + "name": "loadTestProfileMappingName", + "in": "path", + "description": "Load Test Profile Mapping name", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" + }, + { + "name": "properties", + "in": "body", + "description": "The resource properties to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/LoadTestProfileMappingResourceUpdate" + } + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestProfileMappingResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a Load Test Profile Mapping": { + "$ref": "./examples/LoadTestProfileMappings_Update.json" + } + } + }, + "delete": { + "operationId": "LoadTestProfileMappings_Delete", + "tags": [ + "LoadTestProfileMappings" + ], + "description": "Delete a LoadTestProfileMappingResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + }, + { + "name": "loadTestProfileMappingName", + "in": "path", + "description": "Load Test Profile Mapping name", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a Load Test Profile Mapping Resource": { + "$ref": "./examples/LoadTestProfileMappings_Delete.json" + } + } + } + }, + "/providers/Microsoft.LoadTestService/operations": { + "get": { + "operationId": "Operations_List", + "tags": [ + "Operations" + ], + "description": "List the operations for the provider", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List the operations for the provider.": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.LoadTestService/loadTests": { + "get": { + "operationId": "LoadTests_ListBySubscription", + "tags": [ + "LoadTests" + ], + "description": "List LoadTestResource resources by subscription ID", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List LoadTestResource resources by subscription ID.": { + "$ref": "./examples/LoadTests_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.LoadTestService/locations/{location}/quotas": { + "get": { + "operationId": "Quotas_List", + "tags": [ + "Quotas" + ], + "description": "List quotas for a given subscription Id.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/QuotaResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List quotas for a given subscription Id.": { + "$ref": "./examples/Quotas_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.LoadTestService/locations/{location}/quotas/{quotaBucketName}": { + "get": { + "operationId": "Quotas_Get", + "tags": [ + "Quotas" + ], + "description": "Get the available quota for a quota bucket per region per subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter" + }, + { + "name": "quotaBucketName", + "in": "path", + "description": "The quota name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/QuotaResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get the available quota for a quota bucket per region per subscription.": { + "$ref": "./examples/Quotas_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.LoadTestService/locations/{location}/quotas/{quotaBucketName}/checkAvailability": { + "post": { + "operationId": "Quotas_CheckAvailability", + "tags": [ + "Quotas" + ], + "description": "Check Quota Availability on quota bucket per region per subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter" + }, + { + "name": "quotaBucketName", + "in": "path", + "description": "The quota name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "QuotaBucketRequest", + "in": "body", + "description": "The content of the action request", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaBucketRequest" + }, + "x-ms-client-name": "body" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/CheckQuotaAvailabilityResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check Quota Availability on quota bucket per region per subscription.": { + "$ref": "./examples/Quotas_CheckAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LoadTestService/loadTests": { + "get": { + "operationId": "LoadTests_ListByResourceGroup", + "tags": [ + "LoadTests" + ], + "description": "List LoadTestResource resources by resource group", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List LoadTestResource resources by resource group.": { + "$ref": "./examples/LoadTests_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LoadTestService/loadTests/{loadTestName}": { + "get": { + "operationId": "LoadTests_Get", + "tags": [ + "LoadTests" + ], + "description": "Get a LoadTestResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "loadTestName", + "in": "path", + "description": "Load Test name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a LoadTestResource.": { + "$ref": "./examples/LoadTests_Get.json" + } + } + }, + "put": { + "operationId": "LoadTests_CreateOrUpdate", + "tags": [ + "LoadTests" + ], + "description": "Create a LoadTestResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "loadTestName", + "in": "path", + "description": "Load Test name", + "required": true, + "type": "string" + }, + { + "name": "LoadTestResource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/LoadTestResource" + }, + "x-ms-client-name": "resource" + } + ], + "responses": { + "200": { + "description": "Resource 'LoadTestResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/LoadTestResource" + } + }, + "201": { + "description": "Resource 'LoadTestResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/LoadTestResource" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a LoadTestResource": { + "$ref": "./examples/LoadTests_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-long-running-operation": true + }, + "patch": { + "operationId": "LoadTests_Update", + "tags": [ + "LoadTests" + ], + "description": "Update a LoadTestResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "loadTestName", + "in": "path", + "description": "Load Test name", + "required": true, + "type": "string" + }, + { + "name": "LoadTestResourcePatchRequestBody", + "in": "body", + "description": "The resource properties to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/LoadTestResourceUpdate" + }, + "x-ms-client-name": "properties" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LoadTestResource" + } + }, + "202": { + "description": "Resource update request accepted.", + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a LoadTestResource.": { + "$ref": "./examples/LoadTests_Update.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "LoadTests_Delete", + "tags": [ + "LoadTests" + ], + "description": "Delete a LoadTestResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "loadTestName", + "in": "path", + "description": "Load Test name", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Resource deletion accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a LoadTestResource.": { + "$ref": "./examples/LoadTests_Delete.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.LoadTestService/loadTests/{loadTestName}/outboundNetworkDependenciesEndpoints": { + "get": { + "operationId": "LoadTests_ListOutboundNetworkDependenciesEndpoints", + "tags": [ + "LoadTests" + ], + "description": "Lists the endpoints that agents may call as part of load testing.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "loadTestName", + "in": "path", + "description": "Load Test name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/PagedOutboundEnvironmentEndpoint" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Lists the endpoints that agents may call as part of load testing.": { + "$ref": "./examples/LoadTests_ListOutboundNetworkDependenciesEndpoints.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "CheckQuotaAvailabilityResponse": { + "type": "object", + "description": "Check quota availability response object.", + "properties": { + "id": { + "type": "string", + "description": "Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\"", + "readOnly": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/systemData", + "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the resource.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/CheckQuotaAvailabilityResponseProperties", + "description": "Check quota availability response properties.", + "x-ms-client-flatten": true + } + }, + "required": [ + "id", + "type" + ] + }, + "CheckQuotaAvailabilityResponseProperties": { + "type": "object", + "description": "Check quota availability response properties.", + "properties": { + "isAvailable": { + "type": "boolean", + "description": "True/False indicating whether the quota request be granted based on availability." + }, + "availabilityStatus": { + "type": "string", + "description": "Message indicating additional details to add to quota support request." + } + } + }, + "EncryptionProperties": { + "type": "object", + "description": "Key and identity details for Customer Managed Key encryption of load test resource.", + "properties": { + "identity": { + "$ref": "#/definitions/EncryptionPropertiesIdentity", + "description": "All identity configuration for Customer-managed key settings defining which identity should be used to auth to Key Vault." + }, + "keyUrl": { + "type": "string", + "description": "key encryption key Url, versioned. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78 or https://contosovault.vault.azure.net/keys/contosokek." + } + } + }, + "EncryptionPropertiesIdentity": { + "type": "object", + "description": "All identity configuration for Customer-managed key settings defining which identity should be used to auth to Key Vault.", + "properties": { + "type": { + "$ref": "#/definitions/type", + "description": "Managed identity type to use for accessing encryption key Url." + }, + "resourceId": { + "type": "string", + "description": "User assigned identity to use for accessing key encryption key Url. Ex: /subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId.", + "x-nullable": true + } + } + }, + "EndpointDependency": { + "type": "object", + "description": "A domain name and connection details used to access a dependency.", + "properties": { + "domainName": { + "type": "string", + "description": "The domain name of the dependency. Domain names may be fully qualified or may contain a * wildcard.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Human-readable supplemental information about the dependency and when it is applicable.", + "readOnly": true + }, + "endpointDetails": { + "type": "array", + "description": "The list of connection details for this endpoint.", + "items": { + "$ref": "#/definitions/EndpointDetail" + }, + "readOnly": true, + "x-ms-identifiers": [ + "port" + ] + } + }, + "required": [ + "domainName" + ] + }, + "EndpointDetail": { + "type": "object", + "description": "Details about the connection between the Batch service and the endpoint.", + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The port an endpoint is connected to.", + "readOnly": true + } + } + }, + "LoadTestMappingProperties": { + "type": "object", + "description": "Azure LoadTest mapping resource properties.", + "properties": { + "sourceResourceId": { + "type": "string", + "description": "Mapped source resource Id.", + "maxLength": 1024 + }, + "azureLoadTestingResourceId": { + "type": "string", + "description": "Mapped Azure Load Test resource Id.", + "maxLength": 1024 + }, + "testId": { + "type": "string", + "description": "Mapped Azure Load Test resource test-id.", + "maxLength": 256 + } + } + }, + "LoadTestMappingResource": { + "type": "object", + "description": "LoadTest mapping resource details", + "properties": { + "properties": { + "$ref": "#/definitions/LoadTestMappingProperties", + "description": "The resource-specific properties for this resource.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "LoadTestMappingResourceListResult": { + "type": "object", + "description": "The response of a LoadTestMappingResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The LoadTestMappingResource items on this page", + "items": { + "$ref": "#/definitions/LoadTestMappingResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "LoadTestMappingResourceUpdate": { + "type": "object", + "description": "The type used for update operations of the LoadTestMappingResource.", + "properties": { + "properties": { + "$ref": "#/definitions/LoadTestMappingResourceUpdateProperties", + "x-ms-client-flatten": true + } + } + }, + "LoadTestMappingResourceUpdateProperties": { + "type": "object", + "description": "The updatable properties of the LoadTestMappingResource.", + "properties": { + "sourceResourceId": { + "type": "string", + "description": "Mapped source resource Id.", + "maxLength": 1024 + }, + "azureLoadTestingResourceId": { + "type": "string", + "description": "Mapped Azure Load Test resource Id.", + "maxLength": 1024 + }, + "testId": { + "type": "string", + "description": "Mapped Azure Load Test resource test-id.", + "maxLength": 256 + } + } + }, + "LoadTestProfileMappingProperties": { + "type": "object", + "description": "Azure LoadTest profile mapping resource properties.", + "properties": { + "sourceResourceId": { + "type": "string", + "description": "Mapped source resource Id.", + "maxLength": 1024 + }, + "azureLoadTestingResourceId": { + "type": "string", + "description": "Mapped Azure Load Test resource Id.", + "maxLength": 1024 + }, + "testProfileId": { + "type": "string", + "description": "Mapped Azure Load Test resource test-profile-id.", + "maxLength": 60 + } + } + }, + "LoadTestProfileMappingResource": { + "type": "object", + "description": "LoadTest profile mapping resource details", + "properties": { + "properties": { + "$ref": "#/definitions/LoadTestProfileMappingProperties", + "description": "The resource-specific properties for this resource.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "LoadTestProfileMappingResourceListResult": { + "type": "object", + "description": "The response of a LoadTestProfileMappingResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The LoadTestProfileMappingResource items on this page", + "items": { + "$ref": "#/definitions/LoadTestProfileMappingResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "LoadTestProfileMappingResourceUpdate": { + "type": "object", + "description": "The type used for update operations of the LoadTestProfileMappingResource.", + "properties": { + "properties": { + "$ref": "#/definitions/LoadTestProfileMappingResourceUpdateProperties", + "x-ms-client-flatten": true + } + } + }, + "LoadTestProfileMappingResourceUpdateProperties": { + "type": "object", + "description": "The updatable properties of the LoadTestProfileMappingResource.", + "properties": { + "sourceResourceId": { + "type": "string", + "description": "Mapped source resource Id.", + "maxLength": 1024 + }, + "azureLoadTestingResourceId": { + "type": "string", + "description": "Mapped Azure Load Test resource Id.", + "maxLength": 1024 + }, + "testProfileId": { + "type": "string", + "description": "Mapped Azure Load Test resource test-profile-id.", + "maxLength": 60 + } + } + }, + "LoadTestProperties": { + "type": "object", + "description": "LoadTest resource properties.", + "properties": { + "description": { + "type": "string", + "description": "Description of the resource.", + "maxLength": 512 + }, + "provisioningState": { + "$ref": "#/definitions/ResourceState", + "description": "Resource provisioning state.", + "readOnly": true + }, + "dataPlaneURI": { + "type": "string", + "description": "Resource data plane URI.", + "maxLength": 2083, + "readOnly": true + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperties", + "description": "CMK Encryption property." + } + } + }, + "LoadTestResource": { + "type": "object", + "description": "LoadTest details.", + "properties": { + "properties": { + "$ref": "#/definitions/LoadTestProperties", + "description": "The resource-specific properties for this resource.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity", + "description": "The managed service identities assigned to this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ] + }, + "LoadTestResourceListResult": { + "type": "object", + "description": "The response of a LoadTestResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The LoadTestResource items on this page", + "items": { + "$ref": "#/definitions/LoadTestResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "LoadTestResourceUpdate": { + "type": "object", + "description": "The type used for update operations of the LoadTestResource.", + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity", + "description": "The managed service identities assigned to this resource." + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/LoadTestResourceUpdateProperties", + "x-ms-client-flatten": true + } + } + }, + "LoadTestResourceUpdateProperties": { + "type": "object", + "description": "The updatable properties of the LoadTestResource.", + "properties": { + "description": { + "type": "string", + "description": "Description of the resource.", + "maxLength": 512 + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperties", + "description": "CMK Encryption property." + } + } + }, + "OutboundEnvironmentEndpoint": { + "type": "object", + "description": "A collection of related endpoints from the same service for which the Batch service requires outbound access.", + "properties": { + "category": { + "type": "string", + "description": "The type of service that Azure Load Testing connects to.", + "readOnly": true + }, + "endpoints": { + "type": "array", + "description": "The endpoints for this service to which the Batch service makes outbound calls.", + "items": { + "$ref": "#/definitions/EndpointDependency" + }, + "readOnly": true, + "x-ms-identifiers": [ + "domainName" + ] + } + } + }, + "PagedOutboundEnvironmentEndpoint": { + "type": "object", + "description": "Values returned by the List operation.", + "properties": { + "value": { + "type": "array", + "description": "The OutboundEnvironmentEndpoint items on this page", + "items": { + "$ref": "#/definitions/OutboundEnvironmentEndpoint" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "QuotaBucketRequest": { + "type": "object", + "description": "Request object of new quota for a quota bucket.", + "properties": { + "properties": { + "$ref": "#/definitions/QuotaBucketRequestProperties", + "description": "Request object of new quota for a quota bucket.", + "x-ms-client-flatten": true + } + } + }, + "QuotaBucketRequestProperties": { + "type": "object", + "description": "New quota request request properties.", + "properties": { + "currentUsage": { + "type": "integer", + "format": "int32", + "description": "Current quota usage of the quota bucket.", + "minimum": 0 + }, + "currentQuota": { + "type": "integer", + "format": "int32", + "description": "Current quota limit of the quota bucket.", + "minimum": 0 + }, + "newQuota": { + "type": "integer", + "format": "int32", + "description": "New quota limit of the quota bucket.", + "minimum": 0 + }, + "dimensions": { + "$ref": "#/definitions/QuotaBucketRequestPropertiesDimensions", + "description": "Dimensions for new quota request." + } + } + }, + "QuotaBucketRequestPropertiesDimensions": { + "type": "object", + "description": "Dimensions for new quota request.", + "properties": { + "subscriptionId": { + "type": "string", + "description": "Subscription Id dimension for new quota request of the quota bucket.", + "minLength": 1 + }, + "location": { + "type": "string", + "description": "Location dimension for new quota request of the quota bucket.", + "minLength": 1 + } + } + }, + "QuotaResource": { + "type": "object", + "description": "Quota bucket details object.", + "properties": { + "properties": { + "$ref": "#/definitions/QuotaResourceProperties", + "description": "The resource-specific properties for this resource.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "QuotaResourceListResult": { + "type": "object", + "description": "The response of a QuotaResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The QuotaResource items on this page", + "items": { + "$ref": "#/definitions/QuotaResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "QuotaResourceProperties": { + "type": "object", + "description": "Quota bucket resource properties.", + "properties": { + "limit": { + "type": "integer", + "format": "int32", + "description": "Current quota limit of the quota bucket.", + "minimum": 0 + }, + "usage": { + "type": "integer", + "format": "int32", + "description": "Current quota usage of the quota bucket.", + "minimum": 0 + }, + "provisioningState": { + "$ref": "#/definitions/ResourceState", + "description": "Resource provisioning state.", + "readOnly": true + } + } + }, + "ResourceState": { + "type": "string", + "description": "Resources provisioning states.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Deleted" + ], + "x-ms-enum": { + "name": "ResourceState", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "Resource has been created." + }, + { + "name": "Failed", + "value": "Failed", + "description": "Resource creation failed." + }, + { + "name": "Canceled", + "value": "Canceled", + "description": "Resource creation was canceled." + }, + { + "name": "Deleted", + "value": "Deleted", + "description": "Deleted state." + } + ] + }, + "readOnly": true + }, + "type": { + "type": "string", + "description": "Managed identity type to use for accessing encryption key Url.", + "enum": [ + "SystemAssigned", + "UserAssigned" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true, + "values": [ + { + "name": "SystemAssigned", + "value": "SystemAssigned", + "description": "System assigned identity." + }, + { + "name": "UserAssigned", + "value": "UserAssigned", + "description": "User assigned identity." + } + ] + } + } + }, + "parameters": { + "Azure.ResourceManager.ResourceUriParameter": { + "name": "resourceUri", + "in": "path", + "description": "The fully qualified Azure Resource manager identifier of the resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/loadtestservice/resource-manager/readme.md b/specification/loadtestservice/resource-manager/readme.md index 16cc1f6f0221..b2cfdf070a07 100644 --- a/specification/loadtestservice/resource-manager/readme.md +++ b/specification/loadtestservice/resource-manager/readme.md @@ -30,6 +30,15 @@ openapi-subtype: rpaas tag: package-2022-12-01 ``` +### Tag: package-2023-12-01-preview + +These settings apply only when `--tag=package-2023-12-01` is specified on the command line. + +```yaml $(tag) == 'package-2023-12-01-preview' +input-file: + - Microsoft.LoadTestService/preview/2023-12-01-preview/loadtestservice.json +``` + ### Tag: package-2022-12-01 These settings apply only when `--tag=package-2022-12-01` is specified on the command line. From 053f21f61bb9ed9c198753036f1eb6adfa0144bc Mon Sep 17 00:00:00 2001 From: Krista Pratico Date: Tue, 25 Jun 2024 11:19:13 -0700 Subject: [PATCH 17/52] fix docs creating bad docstrings in healthinsights (#29557) * fix docs creating bad docstrings in healthinsights * fix ci --- .../HealthInsights.Common/model.common.fhir.elements.tsp | 2 +- .../HealthInsights.TrialMatcher/model.trialmatcher.tsp | 2 +- .../ai/data-plane/HealthInsights/stable/2024-04-01/openapi.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/specification/ai/HealthInsights/HealthInsights.Common/model.common.fhir.elements.tsp b/specification/ai/HealthInsights/HealthInsights.Common/model.common.fhir.elements.tsp index 533733cf14cb..e76df9708d54 100644 --- a/specification/ai/HealthInsights/HealthInsights.Common/model.common.fhir.elements.tsp +++ b/specification/ai/HealthInsights/HealthInsights.Common/model.common.fhir.elements.tsp @@ -55,7 +55,7 @@ alias value_x = { #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Keep is much as close to FHIR Spec" @doc(""" Base for all elements - Based on [FHIR Element](https://www.hl7.org/fhir/datatypes.html#Element) + Based on [FHIR Element](https://www.hl7.org/fhir/R4/element.html) """) model Extension extends Element { @doc("Source of the definition for the extension code - a logical name or a URL.") diff --git a/specification/ai/HealthInsights/HealthInsights.TrialMatcher/model.trialmatcher.tsp b/specification/ai/HealthInsights/HealthInsights.TrialMatcher/model.trialmatcher.tsp index ed61f08ef0c7..058ea91474e2 100644 --- a/specification/ai/HealthInsights/HealthInsights.TrialMatcher/model.trialmatcher.tsp +++ b/specification/ai/HealthInsights/HealthInsights.TrialMatcher/model.trialmatcher.tsp @@ -20,7 +20,7 @@ model TrialMatcherModelConfiguration { ...ModelConfiguration; @doc(""" - The clinical trials that the patient(s) should be matched to.
The trial + The clinical trials that the patient(s) should be matched to. The trial selection can be given as a list of custom clinical trials and/or a list of filters to known clinical trial registries. In case both are given, the resulting trial set is a union of the two sets. diff --git a/specification/ai/data-plane/HealthInsights/stable/2024-04-01/openapi.json b/specification/ai/data-plane/HealthInsights/stable/2024-04-01/openapi.json index 9e49f8375fbd..0fbe1b6b7e3c 100644 --- a/specification/ai/data-plane/HealthInsights/stable/2024-04-01/openapi.json +++ b/specification/ai/data-plane/HealthInsights/stable/2024-04-01/openapi.json @@ -982,7 +982,7 @@ }, "Fhir.R4.Extension": { "type": "object", - "description": "Base for all elements\nBased on [FHIR Element](https://www.hl7.org/fhir/datatypes.html#Element)", + "description": "Base for all elements\nBased on [FHIR Element](https://www.hl7.org/fhir/R4/element.html)", "properties": { "url": { "$ref": "#/definitions/Fhir.R4.fhirUri", From 9221ebd2b5be0eee5a8f6187d78b780b874b25fa Mon Sep 17 00:00:00 2001 From: tbyfield <68976176+tbyfield@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:28:59 -0700 Subject: [PATCH 18/52] Microsoft.DevCenter 2024-07-01-preview (#29527) * Copy files from preview/2024-06-01-preview Copied the files in a separate commit. This allows reviewers to easily diff subsequent changes against the previous spec. * Update version to preview/2024-07-01-preview Updated the API version from preview/2024-06-01-preview to preview/2024-07-01-preview. * Added tag for 2024-07-01-preview in readme file * Change introduces a new feature in the form of an API for Imaging on top of Image Definition. * Add suppression same as previous API version * Fixed example. Ran prettier * Remove suppression * re-add suppression * Update references to commontypes to v5 for changes included in this PR * Per PR comment, renamed getDetails to getBuildDetails. Added Azure-AsyncOperation as header returned in new async post actions * Generated new example subscription id as the previous one was not passing the uuid validation locally * Remove unused ListImageBuildTaskGroupsIncludeParameter --------- Co-authored-by: Nick Depinet --- .../2024-07-01-preview/commonDefinitions.json | 170 + .../preview/2024-07-01-preview/devcenter.json | 7822 +++++++++++++++++ .../examples/AttachedNetworks_Create.json | 54 + .../examples/AttachedNetworks_Delete.json | 18 + .../AttachedNetworks_GetByDevCenter.json | 32 + .../AttachedNetworks_GetByProject.json | 32 + .../AttachedNetworks_ListByDevCenter.json | 54 + .../AttachedNetworks_ListByProject.json | 54 + .../examples/Catalogs_Connect.json | 17 + .../examples/Catalogs_CreateAdo.json | 92 + .../examples/Catalogs_CreateGitHub.json | 92 + .../examples/Catalogs_Delete.json | 18 + .../examples/Catalogs_Get.json | 48 + .../Catalogs_GetSyncErrorDetails.json | 36 + .../examples/Catalogs_List.json | 50 + .../examples/Catalogs_Patch.json | 62 + .../examples/Catalogs_Sync.json | 17 + .../examples/CheckNameAvailability.json | 17 + ...opedNameAvailability_DevCenterCatalog.json | 18 + ...ScopedNameAvailability_ProjectCatalog.json | 18 + .../examples/CustomizationTasks_Get.json | 40 + .../CustomizationTasks_GetErrorDetails.json | 22 + .../CustomizationTasks_ListByCatalog.json | 42 + .../examples/DevBoxDefinitions_Create.json | 75 + .../examples/DevBoxDefinitions_Delete.json | 18 + .../examples/DevBoxDefinitions_Get.json | 37 + .../DevBoxDefinitions_GetByProject.json | 37 + .../DevBoxDefinitions_ListByDevCenter.json | 41 + .../DevBoxDefinitions_ListByProject.json | 41 + .../examples/DevBoxDefinitions_Patch.json | 50 + .../DevCenterEncryptionSets_Create.json | 84 + .../DevCenterEncryptionSets_Delete.json | 18 + .../examples/DevCenterEncryptionSets_Get.json | 41 + .../DevCenterEncryptionSets_List.json | 44 + .../DevCenterEncryptionSets_Patch.json | 52 + .../examples/DevCenters_Create.json | 93 + ...ers_CreateWithDisabledManagedNetworks.json | 100 + .../DevCenters_CreateWithEncryption.json | 124 + .../examples/DevCenters_CreateWithPlanId.json | 75 + .../DevCenters_CreateWithUserIdentity.json | 97 + .../examples/DevCenters_Delete.json | 17 + .../examples/DevCenters_Get.json | 41 + .../DevCenters_ListByResourceGroup.json | 37 + .../DevCenters_ListBySubscription.json | 36 + .../examples/DevCenters_Patch.json | 45 + .../examples/EnvironmentDefinitions_Get.json | 53 + ...onmentDefinitions_GetByProjectCatalog.json | 53 + ...nvironmentDefinitions_GetErrorDetails.json | 22 + .../EnvironmentDefinitions_ListByCatalog.json | 56 + ...nmentDefinitions_ListByProjectCatalog.json | 56 + .../examples/EnvironmentTypes_Delete.json | 13 + .../examples/EnvironmentTypes_Get.json | 33 + .../examples/EnvironmentTypes_List.json | 32 + .../examples/EnvironmentTypes_Patch.json | 41 + .../examples/EnvironmentTypes_Put.json | 63 + .../examples/Galleries_Create.json | 54 + .../examples/Galleries_Delete.json | 18 + .../examples/Galleries_Get.json | 30 + .../examples/Galleries_List.json | 50 + .../examples/ImageDefinitions_BuildImage.json | 18 + .../ImageDefinitions_CancelImageBuild.json | 19 + .../ImageDefinitions_GetByProjectCatalog.json | 38 + .../ImageDefinitions_GetImageBuild.json | 34 + ...ImageDefinitions_GetImageBuildDetails.json | 73 + ...ImageDefinitions_ListByProjectCatalog.json | 41 + ...ions_ListImageBuildsByImageDefinition.json | 38 + .../examples/ImageVersions_Get.json | 34 + .../examples/ImageVersions_GetByProject.json | 33 + .../examples/ImageVersions_List.json | 37 + .../examples/ImageVersions_ListByProject.json | 36 + .../examples/Images_Get.json | 44 + .../examples/Images_GetByProject.json | 43 + .../examples/Images_ListByDevCenter.json | 75 + .../examples/Images_ListByGallery.json | 76 + .../examples/Images_ListByProject.json | 105 + .../examples/NetworkConnections_Delete.json | 17 + .../examples/NetworkConnections_Get.json | 35 + .../NetworkConnections_GetHealthDetails.json | 37 + ...etworkConnections_ListByResourceGroup.json | 37 + ...NetworkConnections_ListBySubscription.json | 36 + .../NetworkConnections_ListHealthDetails.json | 41 + ...tOutboundNetworkDependenciesEndpoints.json | 55 + .../examples/NetworkConnections_Patch.json | 45 + .../examples/NetworkConnections_Put.json | 69 + .../NetworkConnections_RunHealthChecks.json | 16 + .../examples/OperationStatus_Get.json | 42 + .../examples/Operations_Get.json | 21 + .../examples/PlanMembers_Create.json | 66 + .../examples/PlanMembers_Delete.json | 18 + .../examples/PlanMembers_Get.json | 34 + .../examples/PlanMembers_List.json | 37 + .../examples/PlanMembers_Patch.json | 45 + .../examples/Plans_Create.json | 71 + .../examples/Plans_Delete.json | 17 + .../examples/Plans_Get.json | 35 + .../examples/Plans_ListByResourceGroup.json | 38 + .../examples/Plans_ListBySubscription.json | 37 + .../examples/Plans_Patch.json | 49 + .../examples/Pools_Delete.json | 18 + .../examples/Pools_Get.json | 46 + .../examples/Pools_GetUnhealthyStatus.json | 60 + .../examples/Pools_List.json | 49 + .../examples/Pools_Patch.json | 57 + .../examples/Pools_Put.json | 92 + .../examples/Pools_PutWithManagedNetwork.json | 99 + .../Pools_PutWithValueDevBoxDefinition.json | 119 + .../examples/Pools_RunHealthChecks.json | 17 + .../ProjectAllowedEnvironmentTypes_Get.json | 26 + .../ProjectAllowedEnvironmentTypes_List.json | 29 + ...nvironmentDefinitions_GetErrorDetails.json | 22 + .../examples/ProjectCatalogs_Connect.json | 17 + .../examples/ProjectCatalogs_CreateAdo.json | 95 + .../ProjectCatalogs_CreateGitHub.json | 95 + .../examples/ProjectCatalogs_Delete.json | 18 + .../examples/ProjectCatalogs_Get.json | 50 + .../ProjectCatalogs_GetSyncErrorDetails.json | 36 + .../examples/ProjectCatalogs_List.json | 50 + .../examples/ProjectCatalogs_Patch.json | 60 + .../examples/ProjectCatalogs_Sync.json | 17 + .../ProjectEnvironmentTypes_Delete.json | 13 + .../examples/ProjectEnvironmentTypes_Get.json | 63 + .../ProjectEnvironmentTypes_List.json | 66 + .../ProjectEnvironmentTypes_Patch.json | 85 + .../examples/ProjectEnvironmentTypes_Put.json | 146 + .../examples/Projects_Delete.json | 17 + .../examples/Projects_Get.json | 41 + .../Projects_GetInheritedSettings.json | 20 + .../Projects_ListByResourceGroup.json | 38 + .../examples/Projects_ListBySubscription.json | 37 + .../examples/Projects_Patch.json | 62 + .../examples/Projects_Put.json | 72 + .../Projects_PutWithMaxDevBoxPerUser.json | 72 + ...dules_CreateDailyShutdownPoolSchedule.json | 67 + .../examples/Schedules_Delete.json | 19 + .../examples/Schedules_Get.json | 35 + .../examples/Schedules_ListByPool.json | 38 + .../examples/Schedules_Patch.json | 46 + .../examples/Skus_ListByProject.json | 32 + .../examples/Skus_ListBySubscription.json | 30 + .../examples/Usages_ListByLocation.json | 34 + .../preview/2024-07-01-preview/vdi.json | 1958 +++++ .../devcenter/resource-manager/readme.md | 17 +- 142 files changed, 16323 insertions(+), 1 deletion(-) create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/commonDefinitions.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/devcenter.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_Create.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_GetByDevCenter.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_GetByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_ListByDevCenter.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_ListByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Connect.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_CreateAdo.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_CreateGitHub.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_GetSyncErrorDetails.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Sync.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckNameAvailability.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckScopedNameAvailability_DevCenterCatalog.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckScopedNameAvailability_ProjectCatalog.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_GetErrorDetails.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_ListByCatalog.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Create.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_GetByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_ListByDevCenter.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_ListByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Create.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Create.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithDisabledManagedNetworks.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithEncryption.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithPlanId.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithUserIdentity.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_ListByResourceGroup.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_ListBySubscription.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_GetByProjectCatalog.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_GetErrorDetails.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_ListByCatalog.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_ListByProjectCatalog.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Put.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Create.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_BuildImage.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_CancelImageBuild.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetByProjectCatalog.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetImageBuild.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetImageBuildDetails.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_ListByProjectCatalog.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_ListImageBuildsByImageDefinition.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_GetByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_ListByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_GetByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByDevCenter.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByGallery.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_GetHealthDetails.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListByResourceGroup.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListBySubscription.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListHealthDetails.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListOutboundNetworkDependenciesEndpoints.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Put.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_RunHealthChecks.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/OperationStatus_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Operations_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Create.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Create.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_ListByResourceGroup.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_ListBySubscription.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_GetUnhealthyStatus.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Put.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_PutWithManagedNetwork.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_PutWithValueDevBoxDefinition.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_RunHealthChecks.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectAllowedEnvironmentTypes_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectAllowedEnvironmentTypes_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogEnvironmentDefinitions_GetErrorDetails.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Connect.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_CreateAdo.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_CreateGitHub.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_GetSyncErrorDetails.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Sync.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_List.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Put.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_GetInheritedSettings.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_ListByResourceGroup.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_ListBySubscription.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Put.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_PutWithMaxDevBoxPerUser.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_CreateDailyShutdownPoolSchedule.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Delete.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Get.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_ListByPool.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Patch.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Skus_ListByProject.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Skus_ListBySubscription.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Usages_ListByLocation.json create mode 100644 specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/vdi.json diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/commonDefinitions.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/commonDefinitions.json new file mode 100644 index 000000000000..0a0aed864aaa --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/commonDefinitions.json @@ -0,0 +1,170 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-07-01-preview", + "title": "DevCenter", + "description": "DevCenter Management API" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "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": { + "Capability": { + "description": "A name/value pair to describe a capability.", + "type": "object", + "properties": { + "name": { + "description": "Name of the capability.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Value of the capability.", + "type": "string", + "readOnly": true + } + } + }, + "TrackedResourceUpdate": { + "description": "Base tracked resource type for PATCH updates", + "type": "object", + "properties": { + "tags": { + "$ref": "#/definitions/Tags", + "description": "Resource tags." + }, + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" + } + } + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "DevCenterSku": { + "description": "The resource model definition representing SKU for DevCenter resources", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Sku" + } + ], + "properties": { + "resourceType": { + "type": "string", + "description": "The name of the resource type", + "readOnly": true + }, + "locations": { + "description": "SKU supported locations.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "capabilities": { + "description": "Collection of name/value pairs to describe the SKU capabilities.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Capability" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "name" + ] + }, + "ProvisioningState": { + "type": "string", + "description": "Provisioning state of the resource.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Creating", + "Created", + "Updating", + "Updated", + "Deleting", + "Deleted", + "Succeeded", + "Failed", + "Canceled", + "MovingResources", + "TransientFailure", + "RolloutInProgress", + "StorageProvisioningFailed" + ], + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + }, + "parameters": { + "ProjectNameParameter": { + "name": "projectName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the project.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "TopParameter": { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'.", + "type": "integer", + "format": "int32", + "required": false, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/devcenter.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/devcenter.json new file mode 100644 index 000000000000..ac1c64a495f7 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/devcenter.json @@ -0,0 +1,7822 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-07-01-preview", + "title": "DevCenter", + "description": "DevCenter Management API" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.DevCenter/plans": { + "get": { + "tags": [ + "Plans" + ], + "description": "Lists all devcenter plans in a subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "Plans_ListBySubscription", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_ListBySubscription": { + "$ref": "./examples/Plans_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/plans": { + "get": { + "tags": [ + "Plans" + ], + "description": "Lists all devcenter plans in a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "Plans_ListByResourceGroup", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_ListByResourceGroup": { + "$ref": "./examples/Plans_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/plans/{planName}": { + "get": { + "tags": [ + "Plans" + ], + "description": "Gets a devcenter plan.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + } + ], + "operationId": "Plans_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_Get": { + "$ref": "./examples/Plans_Get.json" + } + } + }, + "put": { + "tags": [ + "Plans" + ], + "description": "Creates or updates a devcenter plan resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a devcenter plan.", + "required": true, + "schema": { + "$ref": "#/definitions/DevCenterPlan" + } + } + ], + "operationId": "Plans_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterPlan" + } + }, + "201": { + "description": "Created. The request will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DevCenterPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_Create": { + "$ref": "./examples/Plans_Create.json" + } + } + }, + "patch": { + "tags": [ + "Plans" + ], + "description": "Partially updates a devcenter plan.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable devcenter plan properties.", + "required": true, + "schema": { + "$ref": "#/definitions/PlanUpdate" + } + } + ], + "operationId": "Plans_Update", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterPlan" + } + }, + "202": { + "description": "Accepted. The request will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_Update": { + "$ref": "./examples/Plans_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Plans" + ], + "description": "Deletes a devcenter plan", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + } + ], + "operationId": "Plans_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_Delete": { + "$ref": "./examples/Plans_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/plans/{planName}/members": { + "get": { + "tags": [ + "Plans" + ], + "description": "Lists all of the members assigned to a devcenter plan.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "PlanMembers_List", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PlanMembersListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_ListByResourceGroup": { + "$ref": "./examples/PlanMembers_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/plans/{planName}/members/{memberName}": { + "get": { + "tags": [ + "Plans" + ], + "description": "Gets a devcenter plan member.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + }, + { + "$ref": "#/parameters/PlanMemberNameParameter" + } + ], + "operationId": "PlanMembers_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterPlanMember" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_Get": { + "$ref": "./examples/PlanMembers_Get.json" + } + } + }, + "put": { + "tags": [ + "Plans" + ], + "description": "Creates or updates a devcenter plan member resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + }, + { + "$ref": "#/parameters/PlanMemberNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a devcenter plan.", + "required": true, + "schema": { + "$ref": "#/definitions/DevCenterPlanMember" + } + } + ], + "operationId": "PlanMembers_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterPlanMember" + } + }, + "201": { + "description": "Created. The request will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DevCenterPlanMember" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_Create": { + "$ref": "./examples/PlanMembers_Create.json" + } + } + }, + "patch": { + "tags": [ + "Plans" + ], + "description": "Partially updates a devcenter plan.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + }, + { + "$ref": "#/parameters/PlanMemberNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable devcenter plan properties.", + "required": true, + "schema": { + "$ref": "#/definitions/PlanMemberUpdate" + } + } + ], + "operationId": "PlanMembers_Update", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterPlanMember" + } + }, + "202": { + "description": "Accepted. The request will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_Update": { + "$ref": "./examples/PlanMembers_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Plans" + ], + "description": "Deletes a devcenter plan member", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PlanNameParameter" + }, + { + "$ref": "#/parameters/PlanMemberNameParameter" + } + ], + "operationId": "PlanMembers_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Plans_Delete": { + "$ref": "./examples/PlanMembers_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevCenter/devcenters": { + "get": { + "tags": [ + "DevCenters" + ], + "description": "Lists all devcenters in a subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "DevCenters_ListBySubscription", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevCenters_ListBySubscription": { + "$ref": "./examples/DevCenters_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters": { + "get": { + "tags": [ + "DevCenters" + ], + "description": "Lists all devcenters in a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "DevCenters_ListByResourceGroup", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevCenters_ListByResourceGroup": { + "$ref": "./examples/DevCenters_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}": { + "get": { + "tags": [ + "DevCenters" + ], + "description": "Gets a devcenter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + } + ], + "operationId": "DevCenters_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevCenters_Get": { + "$ref": "./examples/DevCenters_Get.json" + } + } + }, + "put": { + "tags": [ + "DevCenters" + ], + "description": "Creates or updates a devcenter resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a devcenter.", + "required": true, + "schema": { + "$ref": "#/definitions/DevCenter" + } + } + ], + "operationId": "DevCenters_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenter" + } + }, + "201": { + "description": "Created. The request will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DevCenter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevCenters_Create": { + "$ref": "./examples/DevCenters_Create.json" + }, + "DevCenters_CreateWithPlanId": { + "$ref": "./examples/DevCenters_CreateWithPlanId.json" + }, + "DevCenters_CreateWithUserIdentity": { + "$ref": "./examples/DevCenters_CreateWithUserIdentity.json" + }, + "DevCenters_CreateWithEncryption": { + "$ref": "./examples/DevCenters_CreateWithEncryption.json" + }, + "DevCenters_CreateWithDisabledManagedNetworks": { + "$ref": "./examples/DevCenters_CreateWithDisabledManagedNetworks.json" + } + } + }, + "patch": { + "tags": [ + "DevCenters" + ], + "description": "Partially updates a devcenter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable devcenter properties.", + "required": true, + "schema": { + "$ref": "#/definitions/DevCenterUpdate" + } + } + ], + "operationId": "DevCenters_Update", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenter" + } + }, + "202": { + "description": "Accepted. The request will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevCenters_Update": { + "$ref": "./examples/DevCenters_Patch.json" + } + } + }, + "delete": { + "tags": [ + "DevCenters" + ], + "description": "Deletes a devcenter", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + } + ], + "operationId": "DevCenters_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevCenters_Delete": { + "$ref": "./examples/DevCenters_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/encryptionSets": { + "get": { + "tags": [ + "EncryptionSets" + ], + "description": "Lists all encryption sets in the devcenter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "EncryptionSets_List", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EncryptionSetListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EncryptionSets_List": { + "$ref": "./examples/DevCenterEncryptionSets_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/encryptionSets/{encryptionSetName}": { + "get": { + "tags": [ + "EncryptionSets" + ], + "description": "Gets a devcenter encryption set.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/DevCenterEncryptionSetNameParameter" + } + ], + "operationId": "EncryptionSets_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EncryptionSets_Get": { + "$ref": "./examples/DevCenterEncryptionSets_Get.json" + } + } + }, + "put": { + "tags": [ + "EncryptionSets" + ], + "description": "Creates or updates a devcenter encryption set resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/DevCenterEncryptionSetNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a devcenter encryption set.", + "required": true, + "schema": { + "$ref": "#/definitions/DevCenterEncryptionSet" + } + } + ], + "operationId": "EncryptionSets_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterEncryptionSet" + } + }, + "201": { + "description": "Created. The request will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DevCenterEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EncryptionSets_Create": { + "$ref": "./examples/DevCenterEncryptionSets_Create.json" + } + } + }, + "patch": { + "tags": [ + "EncryptionSets" + ], + "description": "Partially updates a devcenter encryption set.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/DevCenterEncryptionSetNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable devcenter encryption set properties.", + "required": true, + "schema": { + "$ref": "#/definitions/EncryptionSetUpdate" + } + } + ], + "operationId": "EncryptionSets_Update", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevCenterEncryptionSet" + } + }, + "202": { + "description": "Accepted. The request will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EncryptionSets_Update": { + "$ref": "./examples/DevCenterEncryptionSets_Patch.json" + } + } + }, + "delete": { + "tags": [ + "EncryptionSets" + ], + "description": "Deletes a devcenter encryption set", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/DevCenterEncryptionSetNameParameter" + } + ], + "operationId": "EncryptionSets_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EncryptionSets_Delete": { + "$ref": "./examples/DevCenterEncryptionSets_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevCenter/projects": { + "get": { + "tags": [ + "Projects" + ], + "description": "Lists all projects in the subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "Projects_ListBySubscription", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProjectListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Projects_ListBySubscription": { + "$ref": "./examples/Projects_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects": { + "get": { + "tags": [ + "Projects" + ], + "description": "Lists all projects in the resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "Projects_ListByResourceGroup", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProjectListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Projects_ListByResourceGroup": { + "$ref": "./examples/Projects_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}": { + "get": { + "tags": [ + "Projects" + ], + "description": "Gets a specific project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + } + ], + "operationId": "Projects_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Projects_Get": { + "$ref": "./examples/Projects_Get.json" + } + } + }, + "put": { + "tags": [ + "Projects" + ], + "description": "Creates or updates a project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a project.", + "required": true, + "schema": { + "$ref": "#/definitions/Project" + } + } + ], + "operationId": "Projects_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "201": { + "description": "Accepted. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Projects_CreateOrUpdate": { + "$ref": "./examples/Projects_Put.json" + }, + "Projects_CreateOrUpdateWithLimitsPerDev": { + "$ref": "./examples/Projects_PutWithMaxDevBoxPerUser.json" + } + } + }, + "patch": { + "tags": [ + "Projects" + ], + "description": "Partially updates a project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable project properties.", + "required": true, + "schema": { + "$ref": "#/definitions/ProjectUpdate" + } + } + ], + "operationId": "Projects_Update", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Projects_Update": { + "$ref": "./examples/Projects_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Projects" + ], + "description": "Deletes a project resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + } + ], + "operationId": "Projects_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Projects_Delete": { + "$ref": "./examples/Projects_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/getInheritedSettings": { + "post": { + "tags": [ + "Projects" + ], + "description": "Gets applicable inherited settings for this project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + } + ], + "operationId": "Projects_GetInheritedSettings", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/InheritedSettingsForProject" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Projects_GetInheritedSettings": { + "$ref": "./examples/Projects_GetInheritedSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/attachednetworks": { + "get": { + "tags": [ + "Attached NetworkConnections." + ], + "description": "Lists the attached NetworkConnections for a Project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "AttachedNetworks_ListByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AttachedNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AttachedNetworks_ListByProject": { + "$ref": "./examples/AttachedNetworks_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/attachednetworks/{attachedNetworkConnectionName}": { + "get": { + "tags": [ + "Attached NetworkConnections" + ], + "description": "Gets an attached NetworkConnection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/AttachedNetworkConnectionNameParameter" + } + ], + "operationId": "AttachedNetworks_GetByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AttachedNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AttachedNetworks_GetByProject": { + "$ref": "./examples/AttachedNetworks_GetByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs": { + "get": { + "tags": [ + "Project Catalogs" + ], + "description": "Lists the catalogs associated with a project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "ProjectCatalogs_List", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CatalogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectCatalogs_List": { + "$ref": "./examples/ProjectCatalogs_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}": { + "get": { + "tags": [ + "Project Catalogs" + ], + "description": "Gets an associated project catalog.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "ProjectCatalogs_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectCatalogs_Get": { + "$ref": "./examples/ProjectCatalogs_Get.json" + } + } + }, + "put": { + "tags": [ + "Project Catalogs" + ], + "description": "Creates or updates a project catalog.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a catalog.", + "required": true, + "schema": { + "$ref": "#/definitions/Catalog" + } + } + ], + "operationId": "ProjectCatalogs_CreateOrUpdate", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "201": { + "description": "Accepted. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ProjectCatalogs_CreateOrUpdateGitHub": { + "$ref": "./examples/ProjectCatalogs_CreateGitHub.json" + }, + "ProjectCatalogs_CreateOrUpdateAdo": { + "$ref": "./examples/ProjectCatalogs_CreateAdo.json" + } + } + }, + "patch": { + "tags": [ + "Project Catalogs" + ], + "description": "Partially updates a project catalog.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable project catalog properties.", + "required": true, + "schema": { + "$ref": "#/definitions/CatalogUpdate" + } + } + ], + "operationId": "ProjectCatalogs_Patch", + "responses": { + "200": { + "description": "The resource was updated.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "202": { + "description": "The request will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ProjectCatalogs_Patch": { + "$ref": "./examples/ProjectCatalogs_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Project Catalogs" + ], + "description": "Deletes a project catalog resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "ProjectCatalogs_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectCatalogs_Delete": { + "$ref": "./examples/ProjectCatalogs_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions": { + "get": { + "tags": [ + "Environment Definitions" + ], + "description": "Lists the environment definitions in this project catalog.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "EnvironmentDefinitions_ListByProjectCatalog", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentDefinitions_ListByProjectCatalog": { + "$ref": "./examples/EnvironmentDefinitions_ListByProjectCatalog.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions/{environmentDefinitionName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentDefinitionNameParameter" + } + ], + "get": { + "tags": [ + "Environment Definitions" + ], + "description": "Gets an environment definition from the catalog.", + "operationId": "EnvironmentDefinitions_GetByProjectCatalog", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentDefinitions_GetByProjectCatalog": { + "$ref": "./examples/EnvironmentDefinitions_GetByProjectCatalog.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions/{environmentDefinitionName}/getErrorDetails": { + "post": { + "tags": [ + "Environment Definitions" + ], + "description": "Gets Environment Definition error details", + "operationId": "ProjectCatalogEnvironmentDefinitions_GetErrorDetails", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentDefinitionNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "vdi.json#/definitions/CatalogResourceValidationErrorDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectCatalogEnvironmentDefinitions_GetErrorDetails": { + "$ref": "./examples/ProjectCatalogEnvironmentDefinitions_GetErrorDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/getSyncErrorDetails": { + "post": { + "tags": [ + "Project Catalogs" + ], + "description": "Gets project catalog synchronization error details", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "ProjectCatalogs_GetSyncErrorDetails", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SyncErrorDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectCatalogs_GetSyncErrorDetails": { + "$ref": "./examples/ProjectCatalogs_GetSyncErrorDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/sync": { + "post": { + "tags": [ + "Project Catalogs" + ], + "description": "Syncs templates for a template source.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "ProjectCatalogs_Sync", + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ProjectCatalogs_Sync": { + "$ref": "./examples/ProjectCatalogs_Sync.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/connect": { + "post": { + "tags": [ + "Project Catalogs" + ], + "description": "Connects a project catalog to enable syncing.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "ProjectCatalogs_Connect", + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ProjectCatalogs_Connect": { + "$ref": "./examples/ProjectCatalogs_Connect.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/galleries": { + "get": { + "tags": [ + "Galleries" + ], + "description": "Lists galleries for a devcenter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "Galleries_ListByDevCenter", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/GalleryListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Galleries_ListByDevCenter": { + "$ref": "./examples/Galleries_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/galleries/{galleryName}": { + "get": { + "tags": [ + "Galleries" + ], + "description": "Gets a gallery", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/GalleryNameParameter" + } + ], + "operationId": "Galleries_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Galleries_Get": { + "$ref": "./examples/Galleries_Get.json" + } + } + }, + "put": { + "tags": [ + "Galleries" + ], + "description": "Creates or updates a gallery.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/GalleryNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a gallery.", + "required": true, + "schema": { + "$ref": "#/definitions/Gallery" + } + } + ], + "operationId": "Galleries_CreateOrUpdate", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "201": { + "description": "Accepted. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Galleries_CreateOrUpdate": { + "$ref": "./examples/Galleries_Create.json" + } + } + }, + "delete": { + "tags": [ + "Galleries" + ], + "description": "Deletes a gallery resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/GalleryNameParameter" + } + ], + "operationId": "Galleries_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Galleries_Delete": { + "$ref": "./examples/Galleries_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/images": { + "get": { + "tags": [ + "Images" + ], + "description": "Lists images for a devcenter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "Images_ListByDevCenter", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Images_ListByDevCenter": { + "$ref": "./examples/Images_ListByDevCenter.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/galleries/{galleryName}/images": { + "get": { + "tags": [ + "Images" + ], + "description": "Lists images for a gallery.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/GalleryNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "Images_ListByGallery", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Images_ListByGallery": { + "$ref": "./examples/Images_ListByGallery.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/galleries/{galleryName}/images/{imageName}": { + "get": { + "tags": [ + "Images" + ], + "description": "Gets a gallery image.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/GalleryNameParameter" + }, + { + "$ref": "#/parameters/ImageNameParameter" + } + ], + "operationId": "Images_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Images_Get": { + "$ref": "./examples/Images_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/galleries/{galleryName}/images/{imageName}/versions": { + "get": { + "tags": [ + "Image Versions" + ], + "description": "Lists versions for an image.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/GalleryNameParameter" + }, + { + "$ref": "#/parameters/ImageNameParameter" + } + ], + "operationId": "ImageVersions_ListByImage", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageVersionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ImageVersions_ListByImage": { + "$ref": "./examples/ImageVersions_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/galleries/{galleryName}/images/{imageName}/versions/{versionName}": { + "get": { + "tags": [ + "Image Versions" + ], + "description": "Gets an image version.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/GalleryNameParameter" + }, + { + "$ref": "#/parameters/ImageNameParameter" + }, + { + "$ref": "#/parameters/VersionNameParameter" + } + ], + "operationId": "ImageVersions_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Versions_Get": { + "$ref": "./examples/ImageVersions_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/images": { + "get": { + "tags": [ + "Images" + ], + "description": "Lists images for a project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + } + ], + "operationId": "Images_ListByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Images_ListByProject": { + "$ref": "./examples/Images_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/images/{imageName}": { + "get": { + "tags": [ + "Images" + ], + "description": "Gets an image.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/ProjectImageNameParameter" + } + ], + "operationId": "Images_GetByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Images_GetByProject": { + "$ref": "./examples/Images_GetByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/images/{imageName}/versions": { + "get": { + "tags": [ + "Image Versions" + ], + "description": "Lists versions for an image.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/ProjectImageNameParameter" + } + ], + "operationId": "ImageVersions_ListByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageVersionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ImageVersions_ListByProject": { + "$ref": "./examples/ImageVersions_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/images/{imageName}/versions/{versionName}": { + "get": { + "tags": [ + "Image Versions" + ], + "description": "Gets an image version.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/ProjectImageNameParameter" + }, + { + "$ref": "#/parameters/VersionNameParameter" + } + ], + "operationId": "ImageVersions_GetByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ImageVersions_GetByProject": { + "$ref": "./examples/ImageVersions_GetByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/listSkus": { + "post": { + "tags": [ + "Project SKUs" + ], + "description": "Lists SKUs available to the project", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + } + ], + "operationId": "Skus_ListByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "vdi.json#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Skus_ListByProject": { + "$ref": "./examples/Skus_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/attachednetworks": { + "get": { + "tags": [ + "Attached NetworkConnections." + ], + "description": "Lists the attached NetworkConnections for a DevCenter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "AttachedNetworks_ListByDevCenter", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AttachedNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AttachedNetworks_ListByDevCenter": { + "$ref": "./examples/AttachedNetworks_ListByDevCenter.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/attachednetworks/{attachedNetworkConnectionName}": { + "get": { + "tags": [ + "Attached NetworkConnections" + ], + "description": "Gets an attached NetworkConnection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/AttachedNetworkConnectionNameParameter" + } + ], + "operationId": "AttachedNetworks_GetByDevCenter", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AttachedNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AttachedNetworks_GetByDevCenter": { + "$ref": "./examples/AttachedNetworks_GetByDevCenter.json" + } + } + }, + "put": { + "tags": [ + "Attached NetworkConnections" + ], + "description": "Creates or updates an attached NetworkConnection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/AttachedNetworkConnectionNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents an attached NetworkConnection.", + "required": true, + "schema": { + "$ref": "#/definitions/AttachedNetworkConnection" + } + } + ], + "operationId": "AttachedNetworks_CreateOrUpdate", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AttachedNetworkConnection" + } + }, + "201": { + "description": "Accepted. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AttachedNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "AttachedNetworks_Create": { + "$ref": "./examples/AttachedNetworks_Create.json" + } + } + }, + "delete": { + "tags": [ + "Attached NetworkConnections" + ], + "description": "Un-attach a NetworkConnection.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/AttachedNetworkConnectionNameParameter" + } + ], + "operationId": "AttachedNetworks_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AttachedNetworks_Delete": { + "$ref": "./examples/AttachedNetworks_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs": { + "get": { + "tags": [ + "Catalogs" + ], + "description": "Lists catalogs for a devcenter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "Catalogs_ListByDevCenter", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CatalogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Catalogs_ListByDevCenter": { + "$ref": "./examples/Catalogs_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}": { + "get": { + "tags": [ + "Catalogs" + ], + "description": "Gets a catalog", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "Catalogs_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Catalogs_Get": { + "$ref": "./examples/Catalogs_Get.json" + } + } + }, + "put": { + "tags": [ + "Catalogs" + ], + "description": "Creates or updates a catalog.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a catalog.", + "required": true, + "schema": { + "$ref": "#/definitions/Catalog" + } + } + ], + "operationId": "Catalogs_CreateOrUpdate", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "201": { + "description": "Accepted. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Catalogs_CreateOrUpdateGitHub": { + "$ref": "./examples/Catalogs_CreateGitHub.json" + }, + "Catalogs_CreateOrUpdateAdo": { + "$ref": "./examples/Catalogs_CreateAdo.json" + } + } + }, + "patch": { + "tags": [ + "Catalogs" + ], + "description": "Partially updates a catalog.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable catalog properties.", + "required": true, + "schema": { + "$ref": "#/definitions/CatalogUpdate" + } + } + ], + "operationId": "Catalogs_Update", + "responses": { + "200": { + "description": "The resource was updated.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "202": { + "description": "The request will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Catalogs_Update": { + "$ref": "./examples/Catalogs_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Catalogs" + ], + "description": "Deletes a catalog resource.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "Catalogs_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Catalogs_Delete": { + "$ref": "./examples/Catalogs_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/getSyncErrorDetails": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "post": { + "tags": [ + "Catalogs" + ], + "description": "Gets catalog synchronization error details", + "operationId": "Catalogs_GetSyncErrorDetails", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SyncErrorDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Catalogs_GetSyncErrorDetails": { + "$ref": "./examples/Catalogs_GetSyncErrorDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/sync": { + "post": { + "tags": [ + "Catalogs" + ], + "description": "Syncs templates for a template source.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "Catalogs_Sync", + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Catalogs_Sync": { + "$ref": "./examples/Catalogs_Sync.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/connect": { + "post": { + "tags": [ + "Catalogs" + ], + "description": "Connects a catalog to enable syncing.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + } + ], + "operationId": "Catalogs_Connect", + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Catalogs_Connect": { + "$ref": "./examples/Catalogs_Connect.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/environmentTypes": { + "get": { + "tags": [ + "Environment Types" + ], + "description": "Lists environment types for the devcenter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "EnvironmentTypes_ListByDevCenter", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentTypeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentTypes_ListByDevCenter": { + "$ref": "./examples/EnvironmentTypes_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/environmentTypes/{environmentTypeName}": { + "get": { + "tags": [ + "Environment Types" + ], + "description": "Gets an environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + } + ], + "operationId": "EnvironmentTypes_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentTypes_Get": { + "$ref": "./examples/EnvironmentTypes_Get.json" + } + } + }, + "put": { + "tags": [ + "Environment Types" + ], + "description": "Creates or updates an environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents an Environment Type.", + "required": true, + "schema": { + "$ref": "#/definitions/EnvironmentType" + } + } + ], + "operationId": "EnvironmentTypes_CreateOrUpdate", + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/EnvironmentType" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/EnvironmentType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentTypes_CreateOrUpdate": { + "$ref": "./examples/EnvironmentTypes_Put.json" + } + } + }, + "patch": { + "tags": [ + "Environment Types" + ], + "description": "Partially updates an environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable environment type properties.", + "required": true, + "schema": { + "$ref": "#/definitions/EnvironmentTypeUpdate" + } + } + ], + "operationId": "EnvironmentTypes_Update", + "responses": { + "200": { + "description": "The resource was updated.", + "schema": { + "$ref": "#/definitions/EnvironmentType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentTypes_Update": { + "$ref": "./examples/EnvironmentTypes_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Environment Types" + ], + "description": "Deletes an environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + } + ], + "operationId": "EnvironmentTypes_Delete", + "responses": { + "200": { + "description": "Resource was deleted." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentTypes_Delete": { + "$ref": "./examples/EnvironmentTypes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/allowedEnvironmentTypes": { + "get": { + "tags": [ + "Environment Types" + ], + "description": "Lists allowed environment types for a project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "ProjectAllowedEnvironmentTypes_List", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AllowedEnvironmentTypeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectAllowedEnvironmentTypes_List": { + "$ref": "./examples/ProjectAllowedEnvironmentTypes_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/allowedEnvironmentTypes/{environmentTypeName}": { + "get": { + "tags": [ + "Environment Types" + ], + "description": "Gets an allowed environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + } + ], + "operationId": "ProjectAllowedEnvironmentTypes_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/AllowedEnvironmentType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectAllowedEnvironmentTypes_Get": { + "$ref": "./examples/ProjectAllowedEnvironmentTypes_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/environmentTypes": { + "get": { + "tags": [ + "Environment Types" + ], + "description": "Lists environment types for a project.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "ProjectEnvironmentTypes_List", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProjectEnvironmentTypeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectEnvironmentTypes_List": { + "$ref": "./examples/ProjectEnvironmentTypes_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/environmentTypes/{environmentTypeName}": { + "get": { + "tags": [ + "Environment Types" + ], + "description": "Gets a project environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + } + ], + "operationId": "ProjectEnvironmentTypes_Get", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProjectEnvironmentType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectEnvironmentTypes_Get": { + "$ref": "./examples/ProjectEnvironmentTypes_Get.json" + } + } + }, + "put": { + "tags": [ + "Environment Types" + ], + "description": "Creates or updates a project environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a Project Environment Type.", + "required": true, + "schema": { + "$ref": "#/definitions/ProjectEnvironmentType" + } + } + ], + "operationId": "ProjectEnvironmentTypes_CreateOrUpdate", + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/ProjectEnvironmentType" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ProjectEnvironmentType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectEnvironmentTypes_CreateOrUpdate": { + "$ref": "./examples/ProjectEnvironmentTypes_Put.json" + } + } + }, + "patch": { + "tags": [ + "Environment Types" + ], + "description": "Partially updates a project environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable project environment type properties.", + "required": true, + "schema": { + "$ref": "#/definitions/ProjectEnvironmentTypeUpdate" + } + } + ], + "operationId": "ProjectEnvironmentTypes_Update", + "responses": { + "200": { + "description": "The resource was updated.", + "schema": { + "$ref": "#/definitions/ProjectEnvironmentType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectEnvironmentTypes_Update": { + "$ref": "./examples/ProjectEnvironmentTypes_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Environment Types" + ], + "description": "Deletes a project environment type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentTypeNameParameter" + } + ], + "operationId": "ProjectEnvironmentTypes_Delete", + "responses": { + "200": { + "description": "Resource was deleted." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectEnvironmentTypes_Delete": { + "$ref": "./examples/ProjectEnvironmentTypes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/devboxdefinitions": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Dev Box Definitions" + ], + "description": "List Dev Box definitions for a devcenter.", + "operationId": "DevBoxDefinitions_ListByDevCenter", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevBoxDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DevBoxDefinitions_ListByDevCenter": { + "$ref": "./examples/DevBoxDefinitions_ListByDevCenter.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/devboxdefinitions/{devBoxDefinitionName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/DevBoxDefinitionName" + } + ], + "get": { + "tags": [ + "Dev Box Definitions" + ], + "description": "Gets a Dev Box definition", + "operationId": "DevBoxDefinitions_Get", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevBoxDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevBoxDefinitions_Get": { + "$ref": "./examples/DevBoxDefinitions_Get.json" + } + } + }, + "put": { + "tags": [ + "Dev Box Definitions" + ], + "description": "Creates or updates a Dev Box definition.", + "operationId": "DevBoxDefinitions_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Represents a Dev Box definition.", + "required": true, + "schema": { + "$ref": "#/definitions/DevBoxDefinition" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevBoxDefinition" + } + }, + "201": { + "description": "Created. The operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DevBoxDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevBoxDefinitions_Create": { + "$ref": "./examples/DevBoxDefinitions_Create.json" + } + } + }, + "patch": { + "tags": [ + "Dev Box Definitions" + ], + "description": "Partially updates a Dev Box definition.", + "operationId": "DevBoxDefinitions_Update", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Represents a Dev Box definition.", + "required": true, + "schema": { + "$ref": "#/definitions/DevBoxDefinitionUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevBoxDefinition" + } + }, + "202": { + "description": "Accepted. The operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevBoxDefinitions_Patch": { + "$ref": "./examples/DevBoxDefinitions_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Dev Box Definitions" + ], + "description": "Deletes a Dev Box definition", + "operationId": "DevBoxDefinitions_Delete", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [], + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevBoxDefinitions_Delete": { + "$ref": "./examples/DevBoxDefinitions_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/devboxdefinitions": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Dev Box Definitions" + ], + "description": "List Dev Box definitions configured for a project.", + "operationId": "DevBoxDefinitions_ListByProject", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevBoxDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DevBoxDefinitions_ListByProject": { + "$ref": "./examples/DevBoxDefinitions_ListByProject.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/devboxdefinitions/{devBoxDefinitionName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/DevBoxDefinitionName" + } + ], + "get": { + "tags": [ + "Dev Box Definitions" + ], + "description": "Gets a Dev Box definition configured for a project", + "operationId": "DevBoxDefinitions_GetByProject", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevBoxDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DevBoxDefinitions_GetByProject": { + "$ref": "./examples/DevBoxDefinitions_GetByProject.json" + } + } + } + }, + "/providers/Microsoft.DevCenter/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available resource provider operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Operations_Get": { + "$ref": "./examples/Operations_Get.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevCenter/locations/{location}/operationStatuses/{operationId}": { + "get": { + "description": "Gets the current status of an async operation.", + "operationId": "OperationStatuses_Get", + "summary": "Get Operation Status", + "tags": [ + "OperationStatus" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + } + ], + "responses": { + "200": { + "description": "The requested operation status", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "202": { + "description": "The requested operation status", + "headers": { + "Location": { + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/OperationStatus_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevCenter/locations/{location}/usages": { + "get": { + "operationId": "Usages_ListByLocation", + "description": "Lists the current usages and limits in this location for the provided subscription.", + "tags": [ + "Usages" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; a list of usages is returned", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + }, + "default": { + "description": "The default error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "listUsages": { + "$ref": "./examples/Usages_ListByLocation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevCenter/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "operationId": "CheckNameAvailability_Execute", + "x-ms-examples": { + "NameAvailability": { + "$ref": "./examples/CheckNameAvailability.json" + } + }, + "description": "Check the availability of name for resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "nameAvailabilityRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest" + }, + "description": "The required parameters for checking if resource name is available." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevCenter/checkScopedNameAvailability": { + "post": { + "tags": [ + "CheckScopedNameAvailability" + ], + "operationId": "CheckScopedNameAvailability_Execute", + "x-ms-examples": { + "DevcenterCatalogNameAvailability": { + "$ref": "./examples/CheckScopedNameAvailability_DevCenterCatalog.json" + }, + "ProjectCatalogNameAvailability": { + "$ref": "./examples/CheckScopedNameAvailability_ProjectCatalog.json" + } + }, + "description": "Check the availability of name for resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "nameAvailabilityRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckScopedNameAvailabilityRequest" + }, + "description": "The required parameters for checking if resource name is available." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/tasks": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Customization Tasks" + ], + "description": "List Tasks in the catalog.", + "operationId": "CustomizationTasks_ListByCatalog", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomizationTaskListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "CustomizationTasks_ListByCatalog": { + "$ref": "./examples/CustomizationTasks_ListByCatalog.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/tasks/{taskName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/CustomizationTaskNameParameter" + } + ], + "get": { + "tags": [ + "Customization Tasks" + ], + "description": "Gets a Task from the catalog", + "operationId": "CustomizationTasks_Get", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomizationTask" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomizationTasks_Get": { + "$ref": "./examples/CustomizationTasks_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/tasks/{taskName}/getErrorDetails": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/CustomizationTaskNameParameter" + } + ], + "post": { + "tags": [ + "Customization Tasks" + ], + "description": "Gets Customization Task error details", + "operationId": "CustomizationTasks_GetErrorDetails", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "vdi.json#/definitions/CatalogResourceValidationErrorDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomizationTasks_GetErrorDetails": { + "$ref": "./examples/CustomizationTasks_GetErrorDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/environmentDefinitions": { + "get": { + "tags": [ + "Environment Definitions" + ], + "description": "List environment definitions in the catalog.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "operationId": "EnvironmentDefinitions_ListByCatalog", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EnvironmentDefinitions_ListByCatalog": { + "$ref": "./examples/EnvironmentDefinitions_ListByCatalog.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/environmentDefinitions/{environmentDefinitionName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentDefinitionNameParameter" + } + ], + "get": { + "tags": [ + "Environment Definitions" + ], + "description": "Gets an environment definition from the catalog.", + "operationId": "EnvironmentDefinitions_Get", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentDefinitions_Get": { + "$ref": "./examples/EnvironmentDefinitions_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/devcenters/{devCenterName}/catalogs/{catalogName}/environmentDefinitions/{environmentDefinitionName}/getErrorDetails": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DevCenterNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentDefinitionNameParameter" + } + ], + "post": { + "tags": [ + "Environment Definitions" + ], + "description": "Gets Environment Definition error details", + "operationId": "EnvironmentDefinitions_GetErrorDetails", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "vdi.json#/definitions/CatalogResourceValidationErrorDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnvironmentDefinitions_GetErrorDetails": { + "$ref": "./examples/EnvironmentDefinitions_GetErrorDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/imageDefinitions": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Image Definitions" + ], + "description": "List Image Definitions in the catalog.", + "operationId": "ProjectCatalogImageDefinitions_ListByProjectCatalog", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ImageDefinitions_ListByProjectCatalog": { + "$ref": "./examples/ImageDefinitions_ListByProjectCatalog.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/imageDefinitions/{imageDefinitionName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionNameParameter" + } + ], + "get": { + "tags": [ + "Image Definitions" + ], + "description": "Gets an Image Definition from the catalog", + "operationId": "ProjectCatalogImageDefinitions_GetByProjectCatalog", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ImageDefinitions_GetByProjectCatalog": { + "$ref": "./examples/ImageDefinitions_GetByProjectCatalog.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/imageDefinitions/{imageDefinitionName}/buildImage": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionNameParameter" + } + ], + "post": { + "tags": [ + "Image Definitions" + ], + "description": "Builds an image for the specified Image Definition.", + "operationId": "ProjectCatalogImageDefinitions_BuildImage", + "parameters": [], + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + }, + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ProjectCatalogImageDefinitions_BuildImage": { + "$ref": "./examples/ImageDefinitions_BuildImage.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/imageDefinitions/{imageDefinitionName}/builds": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionNameParameter" + } + ], + "get": { + "tags": [ + "Image Definitions" + ], + "description": "Lists builds for a specified image definition.", + "operationId": "ProjectCatalogImageDefinitionBuilds_ListByImageDefinition", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageDefinitionBuildListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ImageDefinitionBuilds_ListByImageDefinition": { + "$ref": "./examples/ImageDefinitions_ListImageBuildsByImageDefinition.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/imageDefinitions/{imageDefinitionName}/builds/{buildName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionBuildNameParameter" + } + ], + "get": { + "tags": [ + "Image Definitions" + ], + "description": "Gets a build for a specified image definition.", + "operationId": "ProjectCatalogImageDefinitionBuild_Get", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageDefinitionBuild" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ImageDefinitionBuilds_GetByImageDefinition": { + "$ref": "./examples/ImageDefinitions_GetImageBuild.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/imageDefinitions/{imageDefinitionName}/builds/{buildName}/cancel": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionBuildNameParameter" + } + ], + "post": { + "tags": [ + "Image Definitions" + ], + "description": "Cancels the specified build for an image definition.", + "operationId": "ProjectCatalogImageDefinitionBuild_Cancel", + "parameters": [], + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + }, + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ImageDefinitionBuilds_CancelByImageDefinition": { + "$ref": "./examples/ImageDefinitions_CancelImageBuild.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/catalogs/{catalogName}/imageDefinitions/{imageDefinitionName}/builds/{buildName}/getBuildDetails": { + "post": { + "tags": [ + "Image Definitions" + ], + "description": "Gets Build details", + "operationId": "ProjectCatalogImageDefinitionBuild_GetBuildDetails", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionNameParameter" + }, + { + "$ref": "#/parameters/ImageDefinitionBuildNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageDefinitionBuildDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProjectCatalogImageDefinitionBuild_GetErrorDetails": { + "$ref": "./examples/ImageDefinitions_GetImageBuildDetails.json" + } + } + } + } + }, + "definitions": { + "DevCenterPlan": { + "type": "object", + "description": "Represents a devcenter plan resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Plan properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PlanProperties" + }, + "sku": { + "description": "The SKU for DevCenters created using this definition.", + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Sku" + } + } + }, + "PlanProperties": { + "description": "Properties of the devcenter plan.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + } + } + }, + "DevCenterPlanMember": { + "type": "object", + "description": "Represents a devcenter plan member resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Plan member properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PlanMemberProperties" + }, + "tags": { + "$ref": "commonDefinitions.json#/definitions/Tags", + "description": "Resource tags." + } + } + }, + "PlanMemberProperties": { + "description": "Properties of the devcenter plan member.", + "type": "object", + "properties": { + "memberId": { + "description": "The unique id of the member.", + "type": "string" + }, + "memberType": { + "description": "The type of the member (user, group)", + "enum": [ + "User", + "Group" + ], + "type": "string", + "x-ms-enum": { + "name": "PlanMemberType", + "modelAsString": true + } + }, + "tags": { + "$ref": "commonDefinitions.json#/definitions/Tags", + "description": "Resource tags." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + } + } + }, + "PlanMemberUpdate": { + "description": "The devcenter plan member resource for partial updates. Properties not provided in the update request will not be changed.", + "type": "object", + "properties": { + "tags": { + "$ref": "commonDefinitions.json#/definitions/Tags", + "description": "Resource tags." + } + } + }, + "DevCenter": { + "type": "object", + "description": "Represents a devcenter resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "DevCenter properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DevCenterProperties" + }, + "identity": { + "description": "Managed identity properties", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" + } + } + }, + "DevCenterProperties": { + "description": "Properties of the devcenter.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DevCenterUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "devCenterUri": { + "description": "The URI of the Dev Center.", + "$ref": "#/definitions/DevCenterUri", + "readOnly": true + } + } + }, + "DevCenterUpdateProperties": { + "description": "Properties of the devcenter. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "planId": { + "type": "string", + "description": "Resource Id of an associated Plan" + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Encryption settings to be used for server-side encryption for proprietary content (such as catalogs, logs, customizations)." + }, + "displayName": { + "type": "string", + "description": "The display name of the devcenter." + }, + "projectCatalogSettings": { + "$ref": "#/definitions/DevCenterProjectCatalogSettings", + "description": "Dev Center settings to be used when associating a project with a catalog." + }, + "networkSettings": { + "$ref": "#/definitions/DevCenterNetworkSettings", + "description": "Network settings that will be enforced on network resources associated with the Dev Center." + }, + "devBoxProvisioningSettings": { + "$ref": "#/definitions/DevBoxProvisioningSettings", + "description": "Settings to be used in the provisioning of all Dev Boxes that belong to this dev center." + } + } + }, + "DevCenterEncryptionSet": { + "description": "Represents a devcenter encryption set resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DevCenterEncryptionSetProperties", + "description": "Properties of a devcenter encryption set." + }, + "identity": { + "description": "Managed identity properties", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" + } + } + }, + "DevCenterEncryptionSetProperties": { + "description": "Properties of the devcenter encryption set.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DevCenterEncryptionSetUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + } + } + }, + "DevCenterEncryptionSetUpdateProperties": { + "description": "Properties of the devcenter encryption set. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "devboxDisksEncryptionEnableStatus": { + "description": "Devbox disk encryption enable or disable status. Indicates if Devbox disks encryption using DevCenter CMK is enabled or not.", + "$ref": "#/definitions/DevboxDisksEncryptionEnableStatus" + }, + "keyEncryptionKeyUrl": { + "type": "string", + "description": "Key encryption key Url, versioned or non-versioned. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78 or https://contosovault.vault.azure.net/keys/contosokek." + } + } + }, + "DevboxDisksEncryptionEnableStatus": { + "description": "Devbox disk encryption enable or disable status. Indicates if Devbox disks encryption is enabled or not.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "DevboxDisksEncryptionEnableStatus", + "modelAsString": true + } + }, + "DevCenterProjectCatalogSettings": { + "type": "object", + "description": "Project catalog settings for project catalogs under a project associated to this dev center.", + "properties": { + "catalogItemSyncEnableStatus": { + "description": "Whether project catalogs associated with projects in this dev center can be configured to sync catalog items.", + "$ref": "#/definitions/CatalogItemSyncEnableStatus" + } + } + }, + "DevBoxProvisioningSettings": { + "type": "object", + "description": "Provisioning settings that apply to all Dev Boxes created in this dev center", + "properties": { + "installAzureMonitorAgentEnableStatus": { + "description": "Whether project catalogs associated with projects in this dev center can be configured to sync catalog items.", + "$ref": "#/definitions/InstallAzureMonitorAgentEnableStatus" + } + } + }, + "CatalogItemSyncEnableStatus": { + "description": "Catalog item sync types enable or disable status. Indicates whether project catalogs are allowed to sync catalog items under projects associated to this dev center.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "CatalogItemSyncEnableStatus", + "modelAsString": true + } + }, + "DevCenterNetworkSettings": { + "type": "object", + "description": "Network settings for the Dev Center.", + "properties": { + "microsoftHostedNetworkEnableStatus": { + "$ref": "#/definitions/MicrosoftHostedNetworkEnableStatus" + } + } + }, + "ProjectNetworkSettings": { + "type": "object", + "description": "Network settings for the project.", + "properties": { + "microsoftHostedNetworkEnableStatus": { + "$ref": "#/definitions/MicrosoftHostedNetworkEnableStatus", + "readOnly": true + } + } + }, + "MicrosoftHostedNetworkEnableStatus": { + "description": "Indicates whether pools in this Dev Center can use Microsoft Hosted Networks. Defaults to Enabled if not set.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "MicrosoftHostedNetworkEnableStatus", + "modelAsString": true + } + }, + "Encryption": { + "type": "object", + "properties": { + "customerManagedKeyEncryption": { + "$ref": "../../../../../common-types/resource-management/v4/customermanagedkeys.json#/definitions/customerManagedKeyEncryption" + } + } + }, + "InstallAzureMonitorAgentEnableStatus": { + "description": "Setting to be used when determining whether to install the Azure Monitor Agent service on Dev Boxes that belong to this dev center.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "InstallAzureMonitorAgentEnableStatus", + "modelAsString": true + } + }, + "PlanUpdate": { + "description": "The devcenter plan resource for partial updates. Properties not provided in the update request will not be changed.", + "type": "object", + "allOf": [ + { + "$ref": "commonDefinitions.json#/definitions/TrackedResourceUpdate" + } + ], + "properties": { + "sku": { + "description": "The SKU for DevCenters created using this definition.", + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Sku" + } + } + }, + "DevCenterUpdate": { + "description": "The devcenter resource for partial updates. Properties not provided in the update request will not be changed.", + "type": "object", + "allOf": [ + { + "$ref": "commonDefinitions.json#/definitions/TrackedResourceUpdate" + } + ], + "properties": { + "identity": { + "description": "Managed identity properties", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DevCenterUpdateProperties", + "description": "Properties of a Dev Center to be updated." + } + } + }, + "EncryptionSetUpdate": { + "description": "The devcenter encryption set resource for partial updates. Properties not provided in the update request will not be changed.", + "type": "object", + "allOf": [ + { + "$ref": "commonDefinitions.json#/definitions/TrackedResourceUpdate" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DevCenterEncryptionSetUpdateProperties", + "description": "Properties of a Dev Center encryption set to be updated." + }, + "identity": { + "description": "Managed identity properties", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" + } + } + }, + "PlanListResult": { + "description": "Result of the list devcenter plans operation", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DevCenterPlan" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "PlanMembersListResult": { + "description": "Result of the list devcenter plan members operation", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DevCenterPlanMember" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "DevCenterListResult": { + "description": "Result of the list devcenters operation", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DevCenter" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "EncryptionSetListResult": { + "description": "Result of the list devcenter encryption set operation", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DevCenterEncryptionSet" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "DevCenterUri": { + "description": "The URI of the resource.", + "readOnly": true, + "type": "string" + }, + "Project": { + "description": "Represents a project resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProjectProperties", + "description": "Properties of a project." + }, + "identity": { + "description": "Managed identity properties", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" + } + } + }, + "ProjectUpdateProperties": { + "description": "Properties of a project. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "devCenterId": { + "type": "string", + "description": "Resource Id of an associated DevCenter" + }, + "description": { + "type": "string", + "description": "Description of the project." + }, + "maxDevBoxesPerUser": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "When specified, limits the maximum number of Dev Boxes a single user can create across all pools in the project. This will have no effect on existing Dev Boxes when reduced." + }, + "displayName": { + "type": "string", + "description": "The display name of the project." + }, + "catalogSettings": { + "$ref": "#/definitions/ProjectCatalogSettings", + "description": "Settings to be used when associating a project with a catalog." + } + } + }, + "ProjectCatalogSettings": { + "description": "Settings to be used when associating a project with a catalog.", + "type": "object", + "properties": { + "catalogItemSyncTypes": { + "description": "Indicates catalog item types that can be synced.", + "type": "array", + "items": { + "$ref": "#/definitions/CatalogItemType" + } + } + } + }, + "ProjectProperties": { + "description": "Properties of a project.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProjectUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "devCenterUri": { + "description": "The URI of the Dev Center resource this project is associated with.", + "$ref": "#/definitions/DevCenterUri", + "readOnly": true + } + } + }, + "ProjectUpdate": { + "description": "The project properties for partial update. Properties not provided in the update request will not be changed.", + "type": "object", + "allOf": [ + { + "$ref": "commonDefinitions.json#/definitions/TrackedResourceUpdate" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProjectUpdateProperties", + "description": "Properties of a project to be updated." + }, + "identity": { + "description": "Managed identity properties", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" + } + } + }, + "ProjectListResult": { + "description": "Results of the project list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Project" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "InheritedSettingsForProject": { + "description": "Applicable inherited settings for a project.", + "type": "object", + "properties": { + "projectCatalogSettings": { + "$ref": "#/definitions/DevCenterProjectCatalogSettings", + "description": "Dev Center settings to be used when associating a project with a catalog.", + "readOnly": true + }, + "networkSettings": { + "$ref": "#/definitions/ProjectNetworkSettings", + "description": "Network settings that will be enforced on this project.", + "readOnly": true + } + } + }, + "Catalog": { + "description": "Represents a catalog.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CatalogProperties", + "description": "Catalog properties." + } + } + }, + "CatalogUpdateProperties": { + "description": "Properties of a catalog. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "gitHub": { + "description": "Properties for a GitHub catalog type.", + "$ref": "#/definitions/GitCatalog" + }, + "adoGit": { + "description": "Properties for an Azure DevOps catalog type.", + "$ref": "#/definitions/GitCatalog" + }, + "syncType": { + "enum": [ + "Manual", + "Scheduled" + ], + "description": "Indicates the type of sync that is configured for the catalog.", + "type": "string", + "x-ms-enum": { + "name": "CatalogSyncType", + "modelAsString": true + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + } + }, + "CatalogProperties": { + "description": "Properties of a catalog.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CatalogUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "syncState": { + "enum": [ + "Succeeded", + "InProgress", + "Failed", + "Canceled" + ], + "description": "The synchronization state of the catalog.", + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "CatalogSyncState", + "modelAsString": true + } + }, + "lastSyncStats": { + "description": "Stats of the latest synchronization.", + "$ref": "#/definitions/SyncStats", + "readOnly": true + }, + "connectionState": { + "enum": [ + "Connected", + "Disconnected" + ], + "description": "The connection state of the catalog.", + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "CatalogConnectionState", + "modelAsString": true + } + }, + "lastConnectionTime": { + "description": "When the catalog was last connected.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "lastSyncTime": { + "description": "When the catalog was last synced.", + "type": "string", + "readOnly": true, + "format": "date-time" + } + } + }, + "SyncStats": { + "description": "Stats of the synchronization.", + "type": "object", + "properties": { + "added": { + "description": "Count of catalog items added during synchronization.", + "type": "integer", + "format": "int32", + "readOnly": true, + "minimum": 0 + }, + "updated": { + "description": "Count of catalog items updated during synchronization.", + "type": "integer", + "format": "int32", + "readOnly": true, + "minimum": 0 + }, + "unchanged": { + "description": "Count of catalog items that were unchanged during synchronization.", + "type": "integer", + "format": "int32", + "readOnly": true, + "minimum": 0 + }, + "removed": { + "description": "Count of catalog items removed during synchronization.", + "type": "integer", + "format": "int32", + "readOnly": true, + "minimum": 0 + }, + "validationErrors": { + "description": "Count of catalog items that had validation errors during synchronization.", + "type": "integer", + "format": "int32", + "readOnly": true, + "minimum": 0 + }, + "synchronizationErrors": { + "description": "Count of synchronization errors that occured during synchronization.", + "type": "integer", + "format": "int32", + "readOnly": true, + "minimum": 0 + }, + "syncedCatalogItemTypes": { + "description": "Indicates catalog item types that were synced.", + "type": "array", + "items": { + "$ref": "#/definitions/CatalogItemType" + } + } + } + }, + "GitCatalog": { + "description": "Properties for a Git repository catalog.", + "type": "object", + "properties": { + "uri": { + "description": "Git URI.", + "type": "string" + }, + "branch": { + "description": "Git branch.", + "type": "string" + }, + "secretIdentifier": { + "description": "A reference to the Key Vault secret containing a security token to authenticate to a Git repository.", + "type": "string" + }, + "path": { + "description": "The folder where the catalog items can be found inside the repository.", + "type": "string" + } + } + }, + "CatalogUpdate": { + "description": "The catalog's properties for partial update. Properties not provided in the update request will not be changed.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CatalogUpdateProperties", + "description": "Catalog properties for update." + } + } + }, + "CatalogListResult": { + "description": "Results of the catalog list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Catalog" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "SyncErrorDetails": { + "description": "Synchronization error details.", + "type": "object", + "properties": { + "operationError": { + "description": "Error information for the overall synchronization operation.", + "readOnly": true, + "$ref": "vdi.json#/definitions/CatalogErrorDetails" + }, + "conflicts": { + "description": "Catalog items that have conflicting names.", + "type": "array", + "items": { + "$ref": "#/definitions/CatalogConflictError" + }, + "x-ms-identifiers": [], + "readOnly": true + }, + "errors": { + "description": "Errors that occured during synchronization.", + "type": "array", + "items": { + "$ref": "#/definitions/CatalogSyncError" + }, + "x-ms-identifiers": [], + "readOnly": true + } + } + }, + "CatalogSyncError": { + "description": "An individual synchronization error.", + "type": "object", + "properties": { + "path": { + "description": "The path of the file the error is associated with.", + "type": "string", + "readOnly": true + }, + "errorDetails": { + "description": "Errors associated with the file.", + "type": "array", + "items": { + "$ref": "vdi.json#/definitions/CatalogErrorDetails" + }, + "x-ms-identifiers": [], + "readOnly": true + } + } + }, + "CatalogConflictError": { + "description": "An individual conflict error.", + "type": "object", + "properties": { + "path": { + "description": "The path of the file that has a conflicting name.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the conflicting catalog item.", + "type": "string", + "readOnly": true + } + } + }, + "Gallery": { + "description": "Represents a gallery.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryProperties", + "description": "Gallery properties." + } + } + }, + "GalleryProperties": { + "description": "Properties of a gallery.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "galleryResourceId": { + "description": "The resource ID of the backing Azure Compute Gallery.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + } + }, + "required": [ + "galleryResourceId" + ] + }, + "Image": { + "description": "Represents an image.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageProperties", + "description": "Image properties." + } + } + }, + "ImageProperties": { + "description": "Properties of an image.", + "type": "object", + "properties": { + "description": { + "description": "The description of the image.", + "type": "string", + "readOnly": true + }, + "publisher": { + "description": "The publisher of the image.", + "type": "string", + "readOnly": true + }, + "offer": { + "description": "The name of the image offer.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "The SKU name for the image.", + "type": "string", + "readOnly": true + }, + "recommendedMachineConfiguration": { + "description": "The recommended machine configuration to use with the image.", + "$ref": "#/definitions/RecommendedMachineConfiguration", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "hibernateSupport": { + "description": "Indicates whether this image has hibernate enabled. Not all images are capable of supporting hibernation. To find out more see https://aka.ms/devbox/hibernate", + "readOnly": true, + "$ref": "#/definitions/HibernateSupport" + } + } + }, + "RecommendedMachineConfiguration": { + "description": "Properties for a recommended machine configuration.", + "type": "object", + "properties": { + "memory": { + "description": "Recommended memory range.", + "$ref": "#/definitions/ResourceRange", + "readOnly": true + }, + "vCPUs": { + "description": "Recommended vCPU range.", + "$ref": "#/definitions/ResourceRange", + "readOnly": true + } + } + }, + "ResourceRange": { + "description": "Properties for a range of values.", + "type": "object", + "properties": { + "min": { + "description": "Minimum value.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "max": { + "description": "Maximum value.", + "type": "integer", + "format": "int32", + "readOnly": true + } + } + }, + "ImageVersion": { + "description": "Represents an image version.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageVersionProperties", + "description": "Image version properties." + } + } + }, + "ImageVersionProperties": { + "description": "Properties of an image version.", + "type": "object", + "properties": { + "name": { + "description": "The semantic version string.", + "type": "string", + "readOnly": true + }, + "publishedDate": { + "description": "The datetime that the backing image version was published.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "excludeFromLatest": { + "description": "If the version should be excluded from being treated as the latest version.", + "type": "boolean", + "readOnly": true + }, + "osDiskImageSizeInGb": { + "description": "The size of the OS disk image, in GB.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + } + } + }, + "GalleryListResult": { + "description": "Results of the gallery list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Gallery" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "ImageListResult": { + "description": "Results of the image list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Image" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "ImageVersionListResult": { + "description": "Results of the image version list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ImageVersion" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "AllowedEnvironmentType": { + "description": "Represents an allowed environment type.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AllowedEnvironmentTypeProperties", + "description": "Properties of an allowed environment type." + } + } + }, + "AllowedEnvironmentTypeProperties": { + "description": "Properties of an allowed environment type.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "displayName": { + "description": "The display name of the allowed environment type.", + "type": "string", + "readOnly": true + } + } + }, + "AllowedEnvironmentTypeListResult": { + "description": "Result of the allowed environment type list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AllowedEnvironmentType" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "EnvironmentType": { + "description": "Represents an environment type.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnvironmentTypeProperties", + "description": "Properties of an environment type." + }, + "tags": { + "$ref": "commonDefinitions.json#/definitions/Tags", + "description": "Resource tags." + } + } + }, + "EnvironmentTypeProperties": { + "description": "Properties of an environment type.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentTypeUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + } + } + }, + "EnvironmentTypeUpdate": { + "description": "The environment type for partial update. Properties not provided in the update request will not be changed.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnvironmentTypeUpdateProperties", + "description": "Properties of an environment type to be updated." + }, + "tags": { + "$ref": "commonDefinitions.json#/definitions/Tags", + "description": "Resource tags." + } + } + }, + "EnvironmentTypeUpdateProperties": { + "description": "Properties of an environment type. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The display name of the environment type." + } + } + }, + "EnvironmentTypeListResult": { + "description": "Result of the environment type list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentType" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "ProjectEnvironmentType": { + "description": "Represents an environment type.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProjectEnvironmentTypeProperties", + "description": "Properties of an environment type." + }, + "tags": { + "$ref": "commonDefinitions.json#/definitions/Tags", + "description": "Resource tags." + }, + "identity": { + "description": "Managed identity properties", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" + }, + "location": { + "type": "string", + "description": "The geo-location for the environment type" + } + } + }, + "ProjectEnvironmentTypeUpdateProperties": { + "description": "Properties of a project environment type. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "deploymentTargetId": { + "description": "Id of a subscription that the environment type will be mapped to. The environment's resources will be deployed into this subscription.", + "type": "string" + }, + "displayName": { + "description": "The display name of the project environment type.", + "type": "string" + }, + "status": { + "description": "Defines whether this Environment Type can be used in this Project.", + "$ref": "#/definitions/EnvironmentTypeEnableStatus" + }, + "creatorRoleAssignment": { + "description": "The role definition assigned to the environment creator on backing resources.", + "type": "object", + "properties": { + "roles": { + "type": "object", + "description": "A map of roles to assign to the environment creator.", + "additionalProperties": { + "$ref": "#/definitions/EnvironmentRole" + } + } + } + }, + "userRoleAssignments": { + "description": "Role Assignments created on environment backing resources. This is a mapping from a user object ID to an object of role definition IDs.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserRoleAssignment" + } + } + } + }, + "ProjectEnvironmentTypeProperties": { + "description": "Properties of a project environment type.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProjectEnvironmentTypeUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "environmentCount": { + "description": "The number of environments of this type.", + "type": "integer", + "format": "int32", + "minimum": 0, + "readOnly": true + } + } + }, + "ProjectEnvironmentTypeUpdate": { + "description": "The project environment type for partial update. Properties not provided in the update request will not be changed.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProjectEnvironmentTypeUpdateProperties", + "description": "Properties to configure an environment type." + }, + "tags": { + "$ref": "commonDefinitions.json#/definitions/Tags", + "description": "Resource tags." + }, + "identity": { + "description": "Managed identity properties", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" + } + } + }, + "ProjectEnvironmentTypeListResult": { + "description": "Result of the project environment type list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProjectEnvironmentType" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "DevBoxDefinitionListResult": { + "description": "Results of the Dev Box definition list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DevBoxDefinition" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "DevBoxDefinitionUpdate": { + "description": "Partial update of a Dev Box definition resource.", + "type": "object", + "allOf": [ + { + "$ref": "commonDefinitions.json#/definitions/TrackedResourceUpdate" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DevBoxDefinitionUpdateProperties", + "description": "Properties of a Dev Box definition to be updated." + } + } + }, + "DevBoxDefinition": { + "description": "Represents a definition for a Developer Machine.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Dev Box definition properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DevBoxDefinitionProperties" + } + } + }, + "DevBoxDefinitionUpdateProperties": { + "description": "Properties of a Dev Box definition. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "imageReference": { + "$ref": "vdi.json#/definitions/ImageReference", + "description": "Image reference information." + }, + "sku": { + "description": "The SKU for Dev Boxes created using this definition.", + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Sku" + }, + "osStorageType": { + "description": "The storage type used for the Operating System disk of Dev Boxes created using this definition.", + "type": "string" + }, + "hibernateSupport": { + "description": "Indicates whether Dev Boxes created with this definition are capable of hibernation. Not all images are capable of supporting hibernation. To find out more see https://aka.ms/devbox/hibernate", + "$ref": "#/definitions/HibernateSupport" + } + } + }, + "DevBoxDefinitionProperties": { + "description": "Properties of a Dev Box definition.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DevBoxDefinitionUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "imageValidationStatus": { + "description": "Validation status of the configured image.", + "$ref": "vdi.json#/definitions/ImageValidationStatus", + "readOnly": true + }, + "imageValidationErrorDetails": { + "description": "Details for image validator error. Populated when the image validation is not successful.", + "$ref": "vdi.json#/definitions/ImageValidationErrorDetails", + "readOnly": true + }, + "validationStatus": { + "description": "Validation status for the Dev Box Definition.", + "$ref": "vdi.json#/definitions/CatalogResourceValidationStatus", + "readOnly": true + }, + "activeImageReference": { + "$ref": "vdi.json#/definitions/ImageReference", + "description": "Image reference information for the currently active image (only populated during updates).", + "readOnly": true + } + }, + "required": [ + "imageReference", + "sku" + ] + }, + "AttachedNetworkConnection": { + "description": "Represents an attached NetworkConnection.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AttachedNetworkConnectionProperties", + "description": "Attached NetworkConnection properties." + } + } + }, + "AttachedNetworkConnectionProperties": { + "description": "Properties of an attached NetworkConnection.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "networkConnectionId": { + "description": "The resource ID of the NetworkConnection you want to attach.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "networkConnectionLocation": { + "description": "The geo-location where the NetworkConnection resource specified in 'networkConnectionResourceId' property lives.", + "type": "string", + "readOnly": true + }, + "healthCheckStatus": { + "$ref": "vdi.json#/definitions/HealthCheckStatus", + "readOnly": true + }, + "domainJoinType": { + "description": "AAD Join type of the network. This is populated based on the referenced Network Connection.", + "$ref": "vdi.json#/definitions/DomainJoinType", + "readOnly": true + } + }, + "required": [ + "networkConnectionId" + ] + }, + "AttachedNetworkListResult": { + "description": "Results of the Attached Networks list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/AttachedNetworkConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "EnvironmentRole": { + "type": "object", + "description": "A role that can be assigned to a user.", + "properties": { + "roleName": { + "description": "The common name of the Role Assignment. This is a descriptive name such as 'AcrPush'.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "This is a description of the Role Assignment.", + "type": "string", + "readOnly": true + } + } + }, + "UserRoleAssignment": { + "type": "object", + "description": "Mapping of user object ID to role assignments.", + "x-ms-client-name": "userRoleAssignmentValue", + "properties": { + "roles": { + "type": "object", + "description": "A map of roles to assign to the parent user.", + "additionalProperties": { + "$ref": "#/definitions/EnvironmentRole" + } + } + } + }, + "OperationStatus": { + "description": "The current status of an async operation", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationStatusResult" + } + ], + "properties": { + "properties": { + "description": "Custom operation properties, populated only for a successful operation.", + "type": "object", + "readOnly": true + } + } + }, + "CatalogItemType": { + "description": "Indicates catalog item types.", + "enum": [ + "EnvironmentDefinition", + "ImageDefinition" + ], + "type": "string", + "x-ms-enum": { + "name": "CatalogItemType", + "modelAsString": true + } + }, + "EnvironmentTypeEnableStatus": { + "description": "Indicates whether the environment type is either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EnvironmentTypeEnableStatus", + "modelAsString": true + } + }, + "HibernateSupport": { + "description": "Indicates whether hibernate is enabled/disabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "HibernateSupport", + "modelAsString": true + } + }, + "ListUsagesResult": { + "description": "List of Core Usages.", + "type": "object", + "properties": { + "value": { + "description": "The array page of Usages.", + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "x-ms-identifiers": [], + "readOnly": true + }, + "nextLink": { + "description": "The link to get the next page of Usage result.", + "type": "string", + "readOnly": true + } + } + }, + "Usage": { + "description": "The core usage details.", + "type": "object", + "properties": { + "currentValue": { + "description": "The current usage.", + "type": "integer", + "format": "int64" + }, + "limit": { + "description": "The limit integer.", + "type": "integer", + "format": "int64" + }, + "unit": { + "description": "The unit details.", + "type": "string", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "name": { + "description": "The name.", + "$ref": "#/definitions/UsageName" + }, + "id": { + "description": "The fully qualified arm resource id.", + "type": "string" + } + } + }, + "UsageName": { + "description": "The Usage Names.", + "type": "object", + "properties": { + "localizedValue": { + "description": "The localized name of the resource.", + "type": "string" + }, + "value": { + "description": "The name of the resource.", + "type": "string" + } + } + }, + "CustomizationTaskListResult": { + "description": "Results of the Task list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomizationTask" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "CustomizationTask": { + "description": "Represents a Task to be used in customizing a Dev Box.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Task properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomizationTaskProperties" + } + } + }, + "CustomizationTaskProperties": { + "description": "Properties of a Task.", + "type": "object", + "properties": { + "inputs": { + "description": "Inputs to the task.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/CustomizationTaskInput" + }, + "readOnly": true + }, + "timeout": { + "description": "The default timeout for the task.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "validationStatus": { + "description": "Validation status for the Task.", + "$ref": "vdi.json#/definitions/CatalogResourceValidationStatus", + "readOnly": true + } + } + }, + "CustomizationTaskInput": { + "description": "Input for a Task.", + "type": "object", + "properties": { + "description": { + "description": "Description of the input.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the input.", + "type": "string", + "enum": [ + "string", + "number", + "boolean" + ], + "x-ms-enum": { + "name": "CustomizationTaskInputType", + "modelAsString": true + }, + "readOnly": true + }, + "required": { + "description": "Whether or not the input is required.", + "type": "boolean", + "readOnly": true + } + } + }, + "EnvironmentDefinitionListResult": { + "description": "Results of the environment definition list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentDefinition" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "EnvironmentDefinition": { + "description": "Represents an environment definition catalog item.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Environment definition properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnvironmentDefinitionProperties" + } + } + }, + "EnvironmentDefinitionProperties": { + "description": "Properties of an environment definition.", + "type": "object", + "properties": { + "description": { + "description": "A short description of the environment definition.", + "type": "string", + "readOnly": true + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentDefinitionParameter" + }, + "description": "Input parameters passed to an environment.", + "readOnly": true + }, + "templatePath": { + "description": "Path to the Environment Definition entrypoint file.", + "type": "string", + "readOnly": true + }, + "validationStatus": { + "description": "Validation status for the environment definition.", + "$ref": "vdi.json#/definitions/CatalogResourceValidationStatus", + "readOnly": true + } + } + }, + "EnvironmentDefinitionParameter": { + "type": "object", + "description": "Properties of an Environment Definition parameter", + "properties": { + "id": { + "type": "string", + "description": "Unique ID of the parameter", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Display name of the parameter", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the parameter", + "readOnly": true + }, + "type": { + "description": "A string of one of the basic JSON types (number, integer, array, object, boolean, string)", + "$ref": "#/definitions/ParameterType", + "readOnly": true + }, + "readOnly": { + "type": "boolean", + "description": "Whether or not this parameter is read-only. If true, default should have a value.", + "readOnly": true + }, + "required": { + "type": "boolean", + "description": "Whether or not this parameter is required", + "readOnly": true + } + } + }, + "ParameterType": { + "type": "string", + "enum": [ + "array", + "boolean", + "integer", + "number", + "object", + "string" + ], + "description": "The type of data a parameter accepts.", + "readOnly": true, + "x-ms-enum": { + "name": "ParameterType", + "modelAsString": true, + "values": [ + { + "value": "array", + "description": "The parameter accepts an array of values." + }, + { + "value": "boolean", + "description": "The parameter accepts a boolean value." + }, + { + "value": "integer", + "description": "The parameter accepts an integer value." + }, + { + "value": "number", + "description": "The parameter accepts a number value." + }, + { + "value": "object", + "description": "The parameter accepts an object value." + }, + { + "value": "string", + "description": "The parameter accepts a string value." + } + ] + } + }, + "CheckScopedNameAvailabilityRequest": { + "description": "The scoped name check availability request body.", + "type": "object", + "properties": { + "name": { + "description": "The name of the resource for which availability needs to be checked.", + "type": "string" + }, + "type": { + "description": "The resource type.", + "type": "string" + }, + "scope": { + "description": "The resource id to scope the name check.", + "type": "string" + } + } + }, + "ImageDefinitionListResult": { + "description": "Results of the Image Definition list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageDefinition" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "ImageDefinition": { + "description": "Represents a definition for an Image.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Image Definition properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageDefinitionProperties" + } + } + }, + "ImageDefinitionProperties": { + "description": "Properties of an Image Definition.", + "type": "object", + "properties": { + "imageReference": { + "$ref": "vdi.json#/definitions/ImageReference", + "description": "Image reference information." + }, + "fileUrl": { + "description": "The URL to the repository file containing the image definition.", + "type": "string", + "readOnly": true + }, + "latestBuild": { + "$ref": "#/definitions/LatestImageBuild", + "description": "Details about the latest build." + } + } + }, + "LatestImageBuild": { + "type": "object", + "description": "Details about the latest build.", + "properties": { + "name": { + "description": "Identifier of a build.", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "Start time of the task group.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "endTime": { + "description": "End time of the task group.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "status": { + "description": "The state of an Image Definition Build.", + "$ref": "#/definitions/ImageDefinitionBuildStatus", + "readOnly": true + } + } + }, + "ImageDefinitionBuildStatus": { + "type": "string", + "enum": [ + "Succeeded", + "Running", + "ValidationFailed", + "Failed", + "Cancelled", + "TimedOut" + ], + "description": "The state of an Image Definition Build.", + "readOnly": true, + "x-ms-enum": { + "name": "ImageDefinitionBuildStatus", + "modelAsString": true, + "values": [ + { + "value": "Succeeded", + "description": "The image build has succeeded." + }, + { + "value": "Running", + "description": "The image build is running." + }, + { + "value": "ValidationFailed", + "description": "The built image has failed validation." + }, + { + "value": "Failed", + "description": "The image build has failed." + }, + { + "value": "Cancelled", + "description": "The image build has been cancelled." + }, + { + "value": "TimedOut", + "description": "The image build has timed out." + } + ] + } + }, + "ImageDefinitionBuildListResult": { + "description": "Results of the Image Definition Build list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageDefinitionBuild" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "ImageDefinitionBuild": { + "description": "Represents a specific build of an Image Definition.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Image Definition Build properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageDefinitionBuildProperties" + } + } + }, + "ImageDefinitionBuildProperties": { + "description": "Properties of an Image Definition Build.", + "type": "object", + "properties": { + "imageReference": { + "$ref": "vdi.json#/definitions/ImageReference", + "description": "The specific image version used by the build.", + "readOnly": true + }, + "status": { + "description": "The status of the build.", + "$ref": "#/definitions/ImageDefinitionBuildStatus", + "readOnly": true + }, + "startTime": { + "description": "Start time of the task group.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "endTime": { + "description": "End time of the task group.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "errorDetails": { + "description": "Details for image creation error. Populated when the image creation is not successful.", + "$ref": "#/definitions/ImageCreationErrorDetails", + "readOnly": true + } + } + }, + "ImageDefinitionBuildDetails": { + "description": "Represents a specific build of an Image Definition.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "imageReference": { + "$ref": "vdi.json#/definitions/ImageReference", + "description": "The specific image version used by the build.", + "readOnly": true + }, + "status": { + "description": "The status of the build.", + "$ref": "#/definitions/ImageDefinitionBuildStatus", + "readOnly": true + }, + "startTime": { + "description": "Start time of the task group.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "endTime": { + "description": "End time of the task group.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "errorDetails": { + "description": "Details for image creation error. Populated when the image creation is not successful.", + "$ref": "#/definitions/ImageCreationErrorDetails", + "readOnly": true + }, + "taskGroups": { + "description": "The list of task groups executed during the image definition build.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageDefinitionBuildTaskGroup" + }, + "readOnly": true + } + } + }, + "ImageCreationErrorDetails": { + "type": "object", + "description": "Image creation error details", + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error." + }, + "message": { + "type": "string", + "description": "A message describing the error." + } + } + }, + "ImageDefinitionBuildTaskGroup": { + "description": "A task group executed during the image definition build.", + "type": "object", + "properties": { + "name": { + "description": "The name of the task group.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the task group.", + "$ref": "#/definitions/ImageDefinitionBuildStatus", + "readOnly": true + }, + "startTime": { + "description": "Start time of the task group.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "endTime": { + "description": "End time of the task group.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "tasks": { + "description": "The list of tasks executed during the task group.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageDefinitionBuildTask" + }, + "readOnly": true + } + } + }, + "ImageDefinitionBuildTask": { + "description": "A task executed during the image definition build.", + "type": "object", + "properties": { + "name": { + "description": "The name of the task.", + "type": "string" + }, + "parameters": { + "description": "Parameters for the task.", + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "key", + "value" + ] + } + }, + "displayName": { + "description": "Display name to help differentiate multiple instances of the same task.", + "type": "string" + }, + "id": { + "description": "ID of the task instance.", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "Start time of the task.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "endTime": { + "description": "End time of the task.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "status": { + "description": "The status of the task.", + "$ref": "#/definitions/ImageDefinitionBuildStatus", + "readOnly": true + }, + "logUri": { + "description": "The URI for retrieving logs for the task execution.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "PlanNameParameter": { + "name": "planName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the devcenter plan.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "PlanMemberNameParameter": { + "name": "memberName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a devcenter plan member.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "DevCenterNameParameter": { + "name": "devCenterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the devcenter.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{2,25}$", + "minLength": 3, + "maxLength": 26 + }, + "DevCenterEncryptionSetNameParameter": { + "name": "encryptionSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the devcenter encryption set.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{2,25}$", + "minLength": 3, + "maxLength": 63 + }, + "ProjectNameParameter": { + "name": "projectName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the project.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "CatalogNameParameter": { + "name": "catalogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Catalog.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "GalleryNameParameter": { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "ImageNameParameter": { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-.]{0,78}[a-zA-Z0-9]$", + "minLength": 3, + "maxLength": 80 + }, + "ProjectImageNameParameter": { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9~][a-zA-Z0-9-.~]{0,151}[a-zA-Z0-9]$", + "minLength": 3, + "maxLength": 153 + }, + "VersionNameParameter": { + "name": "versionName", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the image.", + "x-ms-parameter-location": "method", + "pattern": "^[0-9]{1,10}[.][0-9]{1,10}[.][0-9]{1,10}$", + "minLength": 5, + "maxLength": 32 + }, + "EnvironmentTypeNameParameter": { + "name": "environmentTypeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the environment type.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "AttachedNetworkConnectionNameParameter": { + "name": "attachedNetworkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the attached NetworkConnection.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "DevBoxDefinitionName": { + "name": "devBoxDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Dev Box definition.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "FilterParameter": { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName').", + "type": "string", + "required": false, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "description": "The Azure region", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "description": "The ID of an ongoing async operation", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CustomizationTaskNameParameter": { + "name": "taskName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Task.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "EnvironmentDefinitionNameParameter": { + "name": "environmentDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Environment Definition.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "ImageDefinitionNameParameter": { + "name": "imageDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Image Definition.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "ImageDefinitionBuildNameParameter": { + "name": "buildName", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Image Definition Build.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_Create.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_Create.json new file mode 100644 index 000000000000..fc2df13d7a0f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_Create.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "attachedNetworkConnectionName": "network-uswest3", + "body": { + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-uswest3", + "name": "network-uswest3", + "type": "Microsoft.DevCenter/devcenters/attachednetworks", + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3", + "provisioningState": "Accepted" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-uswest3", + "name": "network-uswest3", + "type": "Microsoft.DevCenter/devcenters/attachednetworks", + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3", + "provisioningState": "Accepted" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_Delete.json new file mode 100644 index 000000000000..a9db9b52708e --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "attachedNetworkConnectionName": "network-uswest3" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_GetByDevCenter.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_GetByDevCenter.json new file mode 100644 index 000000000000..944ecf120350 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_GetByDevCenter.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "attachedNetworkConnectionName": "network-uswest3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-uswest3", + "name": "network-uswest3", + "type": "Microsoft.DevCenter/devcenters/attachednetworks", + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3", + "networkConnectionLocation": "centralus", + "healthCheckStatus": "Healthy", + "provisioningState": "Created" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_GetByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_GetByProject.json new file mode 100644 index 000000000000..03943aa4fe8c --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_GetByProject.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "attachedNetworkConnectionName": "network-uswest3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/attachednetworks/network-uswest3", + "name": "network-uswest3", + "type": "Microsoft.DevCenter/projects/attachednetworks", + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3", + "networkConnectionLocation": "centralus", + "healthCheckStatus": "Healthy", + "provisioningState": "Created" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_ListByDevCenter.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_ListByDevCenter.json new file mode 100644 index 000000000000..d2db9c7addac --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_ListByDevCenter.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/netmap1", + "name": "netmap1", + "type": "Microsoft.DevCenter/devcenters/attachedNetworks", + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3", + "networkConnectionLocation": "centralus", + "healthCheckStatus": "Healthy", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "Application", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + }, + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/netmap2", + "name": "netmap2", + "type": "Microsoft.DevCenter/devcenters/attachedNetworks", + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/network-uswest3", + "networkConnectionLocation": "centralus", + "healthCheckStatus": "Healthy", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_ListByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_ListByProject.json new file mode 100644 index 000000000000..57e511dc1149 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/AttachedNetworks_ListByProject.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/attachednetworks/netmap1", + "name": "netmap1", + "type": "Microsoft.DevCenter/projects/attachedNetworks", + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3", + "networkConnectionLocation": "centralus", + "healthCheckStatus": "Healthy", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "Application", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + }, + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/attachednetworks/netmap2", + "name": "netmap2", + "type": "Microsoft.DevCenter/projects/attachedNetworks", + "properties": { + "networkConnectionId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3", + "networkConnectionLocation": "centralus", + "healthCheckStatus": "Healthy", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Connect.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Connect.json new file mode 100644 index 000000000000..885ae1a4216b --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Connect.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_CreateAdo.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_CreateAdo.json new file mode 100644 index 000000000000..500bcd4bb47b --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_CreateAdo.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog", + "body": { + "properties": { + "adoGit": { + "uri": "https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "syncType": "Scheduled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/devcenters/catalogs", + "properties": { + "adoGit": { + "uri": "https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 0, + "updated": 0, + "unchanged": 0, + "removed": 0, + "validationErrors": 0, + "synchronizationErrors": 0 + }, + "provisioningState": "Accepted", + "connectionState": "Connected", + "syncState": "Succeeded", + "syncType": "Scheduled" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/devcenters/catalogs", + "properties": { + "adoGit": { + "uri": "https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 0, + "updated": 0, + "unchanged": 0, + "removed": 0, + "validationErrors": 0, + "synchronizationErrors": 0 + }, + "provisioningState": "Accepted", + "connectionState": "Connected", + "syncState": "Succeeded", + "syncType": "Scheduled" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_CreateGitHub.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_CreateGitHub.json new file mode 100644 index 000000000000..4c14e8c3c868 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_CreateGitHub.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog", + "body": { + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "syncType": "Manual" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/devcenters/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 0, + "updated": 0, + "unchanged": 0, + "removed": 0, + "validationErrors": 0, + "synchronizationErrors": 0 + }, + "provisioningState": "Accepted", + "connectionState": "Connected", + "syncState": "Succeeded", + "syncType": "Manual" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/devcenters/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 0, + "updated": 0, + "unchanged": 0, + "removed": 0, + "validationErrors": 0, + "synchronizationErrors": 0 + }, + "provisioningState": "Accepted", + "connectionState": "Connected", + "syncState": "Succeeded", + "syncType": "Manual" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Delete.json new file mode 100644 index 000000000000..52f006227684 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Get.json new file mode 100644 index 000000000000..7e535137c5d8 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/devcenters/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 1, + "updated": 1, + "unchanged": 1, + "removed": 1, + "validationErrors": 1, + "synchronizationErrors": 1 + }, + "lastConnectionTime": "2020-11-18T18:28:00.314Z", + "lastSyncTime": "2020-11-18T18:28:00.314Z", + "provisioningState": "Succeeded", + "connectionState": "Connected", + "syncState": "Succeeded", + "syncType": "Scheduled" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_GetSyncErrorDetails.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_GetSyncErrorDetails.json new file mode 100644 index 000000000000..c5bfef422a55 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_GetSyncErrorDetails.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog" + }, + "responses": { + "200": { + "body": { + "operationError": { + "code": "Conflict", + "message": "The source control credentials could not be validated successfully." + }, + "conflicts": [ + { + "path": "/Environments/Duplicate/manifest.yaml", + "name": "DuplicateEnvironmentName" + } + ], + "errors": [ + { + "path": "/Environments/Invalid/manifest.yaml", + "errorDetails": [ + { + "code": "ParseError", + "message": "Schema Error Within Catalog Item: Missing Name" + } + ] + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_List.json new file mode 100644 index 000000000000..e1f0b9a3f84e --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_List.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/devcenters/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 1, + "updated": 1, + "unchanged": 1, + "removed": 1, + "validationErrors": 1, + "synchronizationErrors": 1 + }, + "lastConnectionTime": "2020-11-18T18:28:00.314Z", + "lastSyncTime": "2020-11-18T18:28:00.314Z", + "provisioningState": "Succeeded", + "connectionState": "Connected", + "syncState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Patch.json new file mode 100644 index 000000000000..874b0d56ec14 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Patch.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog", + "body": { + "properties": { + "gitHub": { + "path": "/environments" + }, + "syncType": "Scheduled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/devcenters/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/environments" + }, + "lastSyncStats": { + "added": 1, + "updated": 1, + "unchanged": 1, + "removed": 1, + "validationErrors": 1, + "synchronizationErrors": 1 + }, + "lastConnectionTime": "2020-11-18T18:28:00.314Z", + "lastSyncTime": "2020-11-18T18:28:00.314Z", + "provisioningState": "Succeeded", + "connectionState": "Connected", + "syncState": "Succeeded", + "syncType": "Scheduled" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Sync.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Sync.json new file mode 100644 index 000000000000..885ae1a4216b --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Catalogs_Sync.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckNameAvailability.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..af79aaad40f3 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckNameAvailability.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "nameAvailabilityRequest": { + "name": "name1", + "type": "Microsoft.DevCenter/devcenters" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckScopedNameAvailability_DevCenterCatalog.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckScopedNameAvailability_DevCenterCatalog.json new file mode 100644 index 000000000000..9d2ad6db61d0 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckScopedNameAvailability_DevCenterCatalog.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "nameAvailabilityRequest": { + "name": "name1", + "type": "Microsoft.DevCenter/devcenters/catalogs", + "scope": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckScopedNameAvailability_ProjectCatalog.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckScopedNameAvailability_ProjectCatalog.json new file mode 100644 index 000000000000..7864c49865f3 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CheckScopedNameAvailability_ProjectCatalog.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "nameAvailabilityRequest": { + "name": "name1", + "type": "Microsoft.DevCenter/projects/catalogs", + "scope": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_Get.json new file mode 100644 index 000000000000..d355c23dc932 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_Get.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog", + "taskName": "SampleTask" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog/tasks/SampleTask", + "name": "SampleTask", + "type": "Microsoft.DevCenter/devcenters/catalogs/tasks", + "properties": { + "inputs": { + "package": { + "type": "string", + "required": true + }, + "feed": { + "type": "string" + } + }, + "timeout": 30, + "validationStatus": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_GetErrorDetails.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_GetErrorDetails.json new file mode 100644 index 000000000000..e618d33ac176 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_GetErrorDetails.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog", + "taskName": "SampleTask" + }, + "responses": { + "200": { + "body": { + "errors": [ + { + "code": "ParameterValueInvalid", + "message": "Expected parameter value for 'InstanceCount' to be integer but found the string 'test'." + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_ListByCatalog.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_ListByCatalog.json new file mode 100644 index 000000000000..8480bde55c3a --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/CustomizationTasks_ListByCatalog.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "CentralCatalog" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog/tasks/SampleTask", + "name": "SampleTask", + "type": "Microsoft.DevCenter/devcenters/catalogs/tasks", + "properties": { + "inputs": { + "package": { + "type": "string", + "required": true + }, + "feed": { + "type": "string" + } + }, + "timeout": 30 + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Create.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Create.json new file mode 100644 index 000000000000..240d265a2192 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Create.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "devBoxDefinitionName": "WebDevBox", + "body": { + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + }, + "hibernateSupport": "Enabled" + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/devBoxDefinitionName", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/devcenters/devboxdefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + }, + "hibernateSupport": "Enabled", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/devBoxDefinitionName", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/devcenters/devboxdefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + }, + "hibernateSupport": "Enabled", + "provisioningState": "Created" + }, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Delete.json new file mode 100644 index 000000000000..4300aa76b259 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "devBoxDefinitionName": "WebDevBox" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Get.json new file mode 100644 index 000000000000..2f0949dbb01c --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Get.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "devBoxDefinitionName": "WebDevBox" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/WebDevBox", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/devcenters/devboxdefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + }, + "hibernateSupport": "Enabled", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_GetByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_GetByProject.json new file mode 100644 index 000000000000..2a07e77ebb3c --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_GetByProject.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "ContosoProject", + "devBoxDefinitionName": "WebDevBox" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProject/devboxdefinitions/WebDevBox", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/projects/devboxdefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + }, + "hibernateSupport": "Enabled", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_ListByDevCenter.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_ListByDevCenter.json new file mode 100644 index 000000000000..18b2b90d9ed7 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_ListByDevCenter.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "devBoxDefinitionName": "WebDevBox" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/WebDevBox", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/devcenters/devboxdefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + }, + "hibernateSupport": "Enabled", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_ListByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_ListByProject.json new file mode 100644 index 000000000000..bad741f95c47 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_ListByProject.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "ContosoProject", + "devBoxDefinitionName": "WebDevBox" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProject/devboxdefinitions/WebDevBox", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/projects/devboxdefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + }, + "hibernateSupport": "Enabled", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Patch.json new file mode 100644 index 000000000000..04e09b19bdc6 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevBoxDefinitions_Patch.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "devBoxDefinitionName": "WebDevBox", + "body": { + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/2.0.0" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/WebDevBox", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/devcenters/devboxdefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/2.0.0" + }, + "sku": { + "name": "Preview" + }, + "hibernateSupport": "Enabled", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Create.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Create.json new file mode 100644 index 000000000000..ad7eb57833e7 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Create.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "encryptionSetName": "EncryptionWestUs", + "body": { + "location": "westus", + "properties": { + "devboxDisksEncryptionEnableStatus": "Enabled", + "keyEncryptionKeyUrl": "https://contosovaultwestus.vault.azure.net/keys/contosokek" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs", + "name": "EncryptionWestUs", + "type": "Microsoft.DevCenter/devcenters/encryptionSets", + "properties": { + "devboxDisksEncryptionEnableStatus": "Enabled", + "keyEncryptionKeyUrl": "https://contosovaultwestus.vault.azure.net/keys/contosokek", + "provisioningState": "Accepted" + }, + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs", + "name": "EncryptionWestUs", + "type": "Microsoft.DevCenter/devcenters/encryptionSets", + "properties": { + "devboxDisksEncryptionEnableStatus": "Enabled", + "keyEncryptionKeyUrl": "https://contosovaultwestus.vault.azure.net/keys/contosokek", + "provisioningState": "Accepted" + }, + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Delete.json new file mode 100644 index 000000000000..32ae969a8164 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "encryptionSetName": "EncryptionWestUs" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Get.json new file mode 100644 index 000000000000..ff767630588c --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "encryptionSetName": "EncryptionWestUs" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs", + "name": "EncryptionWestUs", + "type": "Microsoft.DevCenter/devcenters/encryptionSets", + "properties": { + "devboxDisksEncryptionEnableStatus": "Enabled", + "keyEncryptionKeyUrl": "https://contosovaultwestus.vault.azure.net/keys/contosokek", + "provisioningState": "Succeeded" + }, + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_List.json new file mode 100644 index 000000000000..3ac1b3c7859c --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_List.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs", + "name": "EncryptionWestUs", + "type": "Microsoft.DevCenter/devcenters/encryptionSets", + "properties": { + "devboxDisksEncryptionEnableStatus": "Enabled", + "keyEncryptionKeyUrl": "https://contosovaultwestus.vault.azure.net/keys/contosokek", + "provisioningState": "Succeeded" + }, + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Patch.json new file mode 100644 index 000000000000..4d9b0c4308a7 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenterEncryptionSets_Patch.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "encryptionSetName": "EncryptionWestUs", + "body": { + "properties": { + "devboxDisksEncryptionEnableStatus": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs", + "name": "EncryptionWestUs", + "type": "Microsoft.DevCenter/devcenters/encryptionSets", + "properties": { + "devboxDisksEncryptionEnableStatus": "Enabled", + "keyEncryptionKeyUrl": "https://contosovault.vault.azure.net/keys/contosokekwestus", + "provisioningState": "Accepted" + }, + "location": "westus", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Create.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Create.json new file mode 100644 index 000000000000..57071a9aa60b --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Create.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "body": { + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "displayName": "ContosoDevCenter", + "devBoxProvisioningSettings": { + "installAzureMonitorAgentEnableStatus": "Enabled" + }, + "projectCatalogSettings": { + "catalogItemSyncEnableStatus": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "hidden-title": "ContosoDevCenter", + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "projectCatalogSettings": { + "catalogItemSyncEnableStatus": "Enabled" + }, + "devBoxProvisioningSettings": { + "installAzureMonitorAgentEnableStatus": "Enabled" + }, + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "hidden-title": "ContosoDevCenter", + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Accepted", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "devBoxProvisioningSettings": { + "installAzureMonitorAgentEnableStatus": "Enabled" + }, + "projectCatalogSettings": { + "catalogItemSyncEnableStatus": "Enabled" + }, + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithDisabledManagedNetworks.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithDisabledManagedNetworks.json new file mode 100644 index 000000000000..18a6fa8bdbb6 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithDisabledManagedNetworks.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "body": { + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "displayName": "ContosoDevCenter", + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Disabled" + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Disabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Accepted", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Disabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithEncryption.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithEncryption.json new file mode 100644 index 000000000000..0a270f6e2032 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithEncryption.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "body": { + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "displayName": "ContosoDevCenter", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "userAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1" + }, + "keyEncryptionKeyUrl": "https://contosovault.vault.azure.net/keys/contosokek" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "userAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1" + }, + "keyEncryptionKeyUrl": "https://contosovault.vault.azure.net/keys/contosokek" + } + }, + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Accepted", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "userAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1" + }, + "keyEncryptionKeyUrl": "https://contosovault.vault.azure.net/keys/contosokek" + } + }, + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithPlanId.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithPlanId.json new file mode 100644 index 000000000000..a1deb11b2572 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithPlanId.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "body": { + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "displayName": "ContosoDevCenter", + "planId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "hidden-title": "ContosoDevCenter", + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "planId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan", + "projectCatalogSettings": { + "catalogItemSyncEnableStatus": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "hidden-title": "ContosoDevCenter", + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "planId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan", + "provisioningState": "Accepted", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithUserIdentity.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithUserIdentity.json new file mode 100644 index 000000000000..c19a75ce1057 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_CreateWithUserIdentity.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "body": { + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "displayName": "ContosoDevCenter" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Accepted", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Delete.json new file mode 100644 index 000000000000..7a1038643622 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Get.json new file mode 100644 index 000000000000..e77e687749f1 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "hidden-title": "ContosoDevCenter", + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter", + "projectCatalogSettings": { + "catalogItemSyncEnableStatus": "Enabled" + }, + "devBoxProvisioningSettings": { + "installAzureMonitorAgentEnableStatus": "Enabled" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_ListByResourceGroup.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_ListByResourceGroup.json new file mode 100644 index 000000000000..65e85692d85d --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_ListByResourceGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:08.896Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_ListBySubscription.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_ListBySubscription.json new file mode 100644 index 000000000000..a36ec56dcf16 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_ListBySubscription.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:08.896Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Patch.json new file mode 100644 index 000000000000..c03960b87502 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/DevCenters_Patch.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "body": { + "tags": { + "CostCode": "12345" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "name": "Contoso", + "type": "Microsoft.DevCenter/devcenters", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "displayName": "ContosoDevCenter" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_Get.json new file mode 100644 index 000000000000..05b6447ebe88 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_Get.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "myCatalog", + "environmentDefinitionName": "myEnvironmentDefinition" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/myCatalog/environmentDefinitions/myEnvironmentDefinition", + "name": "myEnvironmentDefinition", + "type": "Microsoft.DevCenter/devcenters/catalogs/environmentDefinitions", + "properties": { + "description": "My sample environment definition.", + "parameters": [ + { + "id": "functionAppRuntime", + "name": "Function App Runtime", + "type": "string", + "required": true + }, + { + "id": "storageAccountType", + "name": "Storage Account Type", + "type": "string", + "required": true + }, + { + "id": "httpsOnly", + "name": "HTTPS only", + "type": "boolean", + "readOnly": true, + "required": true + } + ], + "templatePath": "azuredeploy.json", + "validationStatus": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_GetByProjectCatalog.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_GetByProjectCatalog.json new file mode 100644 index 000000000000..389731b99247 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_GetByProjectCatalog.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "myCatalog", + "environmentDefinitionName": "myEnvironmentDefinition" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/myCatalog/environmentDefinitions/myEnvironmentDefinition", + "name": "myEnvironmentDefinition", + "type": "Microsoft.DevCenter/projects/catalogs/environmentDefinitions", + "properties": { + "description": "My sample environment definition.", + "parameters": [ + { + "id": "functionAppRuntime", + "name": "Function App Runtime", + "type": "string", + "required": true + }, + { + "id": "storageAccountType", + "name": "Storage Account Type", + "type": "string", + "required": true + }, + { + "id": "httpsOnly", + "name": "HTTPS only", + "type": "boolean", + "readOnly": true, + "required": true + } + ], + "templatePath": "azuredeploy.json", + "validationStatus": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_GetErrorDetails.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_GetErrorDetails.json new file mode 100644 index 000000000000..028c056bce09 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_GetErrorDetails.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "myCatalog", + "environmentDefinitionName": "myEnvironmentDefinition" + }, + "responses": { + "200": { + "body": { + "errors": [ + { + "code": "ParameterValueInvalid", + "message": "Expected parameter value for 'InstanceCount' to be integer but found the string 'test'." + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_ListByCatalog.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_ListByCatalog.json new file mode 100644 index 000000000000..1400f114c604 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_ListByCatalog.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "catalogName": "myCatalog" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/myCatalog/environmentDefinitions/myEnvironmentDefinition", + "name": "myEnvironmentDefinition", + "type": "Microsoft.DevCenter/devcenters/catalogs/environmentDefinitions", + "properties": { + "description": "My sample environment definition.", + "parameters": [ + { + "id": "functionAppRuntime", + "name": "Function App Runtime", + "type": "string", + "required": true + }, + { + "id": "storageAccountType", + "name": "Storage Account Type", + "type": "string", + "required": true + }, + { + "id": "httpsOnly", + "name": "HTTPS only", + "type": "boolean", + "readOnly": true, + "required": true + } + ], + "templatePath": "azuredeploy.json", + "validationStatus": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_ListByProjectCatalog.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_ListByProjectCatalog.json new file mode 100644 index 000000000000..96f6a66f2d44 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentDefinitions_ListByProjectCatalog.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "myCatalog" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/myCatalog/environmentDefinitions/myEnvironmentDefinition", + "name": "myEnvironmentDefinition", + "type": "Microsoft.DevCenter/projects/catalogs/environmentDefinitions", + "properties": { + "description": "My sample environment definition.", + "parameters": [ + { + "id": "functionAppRuntime", + "name": "Function App Runtime", + "type": "string", + "required": true + }, + { + "id": "storageAccountType", + "name": "Storage Account Type", + "type": "string", + "required": true + }, + { + "id": "httpsOnly", + "name": "HTTPS only", + "type": "boolean", + "readOnly": true, + "required": true + } + ], + "templatePath": "azuredeploy.json", + "validationStatus": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Delete.json new file mode 100644 index 000000000000..521b649d3619 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "environmentTypeName": "DevTest" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Get.json new file mode 100644 index 000000000000..273c78176ea0 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "environmentTypeName": "DevTest" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/devcenters/environmenttypes", + "properties": { + "displayName": "Dev" + }, + "tags": { + "hidden-title": "Dev", + "CostCenter": "RnD" + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_List.json new file mode 100644 index 000000000000..c6fe8952150e --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_List.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/devcenters/environmenttypes", + "tags": { + "CostCenter": "RnD" + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Patch.json new file mode 100644 index 000000000000..1f7d71688122 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Patch.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "environmentTypeName": "DevTest", + "body": { + "properties": { + "displayName": "Dev" + }, + "tags": { + "Owner": "superuser" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/devcenters/environmenttypes", + "properties": { + "displayName": "Dev" + }, + "tags": { + "hidden-title": "Dev", + "Owner": "superuser" + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Put.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Put.json new file mode 100644 index 000000000000..2ae1da1efe22 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/EnvironmentTypes_Put.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "environmentTypeName": "DevTest", + "body": { + "tags": { + "Owner": "superuser" + }, + "properties": { + "displayName": "Dev" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/devcenters/environmenttypes", + "properties": { + "displayName": "Dev" + }, + "tags": { + "hidden-title": "Dev", + "Owner": "superuser" + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/devcenters/environmenttypes", + "properties": { + "displayName": "Dev" + }, + "tags": { + "hidden-title": "Dev", + "Owner": "superuser" + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Create.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Create.json new file mode 100644 index 000000000000..871687c9f8fd --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Create.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "galleryName": "StandardGallery", + "body": { + "properties": { + "galleryResourceId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/StandardGallery" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/StandardGallery", + "name": "StandardGallery", + "type": "Microsoft.DevCenter/devcenters/galleries", + "properties": { + "galleryResourceId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/StandardGallery", + "provisioningState": "Accepted" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/StandardGallery", + "name": "StandardGallery", + "type": "Microsoft.DevCenter/devcenters/galleries", + "properties": { + "galleryResourceId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/StandardGallery", + "provisioningState": "Accepted" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Delete.json new file mode 100644 index 000000000000..1ef8a86d9aaa --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "galleryName": "StandardGallery" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Get.json new file mode 100644 index 000000000000..787de3bff8c9 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_Get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "galleryName": "StandardGallery" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/StandardGallery", + "name": "StandardGallery", + "type": "Microsoft.DevCenter/devcenters/galleries", + "properties": { + "galleryResourceId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/StandardGallery", + "provisioningState": "Accepted" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_List.json new file mode 100644 index 000000000000..1af7f3b573be --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Galleries_List.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/default", + "name": "StandardGallery", + "type": "Microsoft.DevCenter/devcenters/galleries", + "properties": { + "provisioningState": "Succeeded", + "galleryResourceId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/CentralGallery" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + }, + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/ImageGallery", + "name": "StandardGallery", + "type": "Microsoft.DevCenter/devcenters/galleries", + "properties": { + "galleryResourceId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/SharedGallery", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_BuildImage.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_BuildImage.json new file mode 100644 index 000000000000..a130b6b2e206 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_BuildImage.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "c8754b2d-8da0-450b-b4c3-f379f1ba5d36", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog", + "imageDefinitionName": "DefaultDevImage" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview", + "Location": "https://management.azure.com/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_CancelImageBuild.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_CancelImageBuild.json new file mode 100644 index 000000000000..94a23e4a6e78 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_CancelImageBuild.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "c8754b2d-8da0-450b-b4c3-f379f1ba5d36", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog", + "imageDefinitionName": "DefaultDevImage", + "buildName": "0a28fc61-6f87-4611-8fe2-32df44ab93b7" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview", + "Location": "https://management.azure.com/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetByProjectCatalog.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetByProjectCatalog.json new file mode 100644 index 000000000000..291414ea82c2 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetByProjectCatalog.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "c8754b2d-8da0-450b-b4c3-f379f1ba5d36", + "resourceGroupName": "rg1", + "projectName": "ContosoProject", + "catalogName": "TeamCatalog", + "imageDefinitionName": "WebDevBox" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProject/catalogs/TeamCatalog/imagedefinitions/WebDevBox", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/projects/catalogs/imagedefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "latestBuild": { + "name": "0a28fc61-6f87-4611-8fe2-32df44ab93b7", + "status": "Running", + "startTime": "2020-11-18T18:25:02.224Z", + "endTime": "2020-11-18T18:25:12.952Z" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetImageBuild.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetImageBuild.json new file mode 100644 index 000000000000..131697dbdbf5 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetImageBuild.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "c8754b2d-8da0-450b-b4c3-f379f1ba5d36", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog", + "imageDefinitionName": "DefaultDevImage", + "buildName": "0a28fc61-6f87-4611-8fe2-32df44ab93b7" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7", + "name": "0a28fc61-6f87-4611-8fe2-32df44ab93b7", + "type": "Microsoft.DevCenter/projects/catalogs/imageDefinitions/builds", + "properties": { + "imageReference": { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "status": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetImageBuildDetails.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetImageBuildDetails.json new file mode 100644 index 000000000000..7a36cb4fd68b --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_GetImageBuildDetails.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "c8754b2d-8da0-450b-b4c3-f379f1ba5d36", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog", + "imageDefinitionName": "DefaultDevImage", + "buildName": "0a28fc61-6f87-4611-8fe2-32df44ab93b7" + }, + "responses": { + "200": { + "body": { + "imageReference": { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "status": "Succeeded", + "taskGroups": [ + { + "name": "Provisioning", + "status": "Succeeded", + "startTime": "2020-11-18T18:25:02.224Z", + "endTime": "2020-11-18T18:25:12.952Z", + "tasks": [ + { + "name": "Provisioning", + "status": "Succeeded", + "displayName": "Provisioning", + "startTime": "2020-11-18T18:25:02.224Z", + "endTime": "2020-11-18T18:25:12.952Z", + "id": "e72eb35f-f406-42ec-8b93-7d18a9f7b059", + "logUri": "" + } + ] + }, + { + "name": "Customizations", + "status": "Succeeded", + "startTime": "2020-11-18T18:25:02.224Z", + "endTime": "2020-11-18T18:25:12.952Z", + "tasks": [ + { + "name": "vs2022", + "status": "Succeeded", + "displayName": "Install Visual Studio 2022", + "startTime": "2020-11-18T18:25:02.224Z", + "endTime": "2020-11-18T18:25:12.952Z", + "id": "e72eb35f-f406-42ec-8b93-7d18a9f7b059", + "logUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/DevProject/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7/logs/e72eb35f-f406-42ec-8b93-7d18a9f7b059" + } + ] + }, + { + "name": "Generalization", + "status": "Succeeded", + "startTime": "2020-11-18T18:25:02.224Z", + "endTime": "2020-11-18T18:25:12.952Z", + "tasks": [ + { + "name": "Generalization", + "status": "Succeeded", + "displayName": "Generalization", + "startTime": "2020-11-18T18:25:02.224Z", + "endTime": "2020-11-18T18:25:12.952Z", + "logUri": "" + } + ] + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_ListByProjectCatalog.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_ListByProjectCatalog.json new file mode 100644 index 000000000000..4a69bdcd4967 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_ListByProjectCatalog.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "c8754b2d-8da0-450b-b4c3-f379f1ba5d36", + "resourceGroupName": "rg1", + "projectName": "ContosoProject", + "catalogName": "TeamCatalog" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProject/catalogs/TeamCatalog/imagedefinitions/WebDevBox", + "name": "WebDevBox", + "type": "Microsoft.DevCenter/projects/catalogs/imagedefinitions", + "properties": { + "imageReference": { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "latestBuild": { + "name": "0a28fc61-6f87-4611-8fe2-32df44ab93b7", + "status": "Running", + "startTime": "2020-11-18T18:25:02.224Z", + "endTime": "2020-11-18T18:25:12.952Z" + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_ListImageBuildsByImageDefinition.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_ListImageBuildsByImageDefinition.json new file mode 100644 index 000000000000..36ce4d09a121 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageDefinitions_ListImageBuildsByImageDefinition.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "c8754b2d-8da0-450b-b4c3-f379f1ba5d36", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog", + "imageDefinitionName": "DefaultDevImage", + "buildName": "0a28fc61-6f87-4611-8fe2-32df44ab93b7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7", + "name": "0a28fc61-6f87-4611-8fe2-32df44ab93b7", + "type": "Microsoft.DevCenter/projects/catalogs/imageDefinitions/builds", + "properties": { + "imageReference": { + "id": "/subscriptions/c8754b2d-8da0-450b-b4c3-f379f1ba5d36/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/1.0.0" + }, + "status": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_Get.json new file mode 100644 index 000000000000..5f8011d276a8 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "galleryName": "DefaultDevGallery", + "imageName": "Win11", + "versionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DefaultDevGallery/images/Win11/versions/1.0.0", + "name": "1.0.0", + "type": "Microsoft.DevCenter/devcenters/galleries/images/versions", + "properties": { + "publishedDate": "2021-12-01T12:45:16.845Z", + "excludeFromLatest": false, + "osDiskImageSizeInGb": 64, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_GetByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_GetByProject.json new file mode 100644 index 000000000000..a3577895c036 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_GetByProject.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "myProject", + "imageName": "~gallery~DefaultDevGallery~ContosoImageDefinition", + "versionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/project/myProject/images/~gallery~DefaultDevGallery~ContosoImageDefinition/versions/1.0.0", + "name": "1.0.0", + "type": "Microsoft.DevCenter/project/images/versions", + "properties": { + "publishedDate": "2021-12-01T12:45:16.845Z", + "excludeFromLatest": false, + "osDiskImageSizeInGb": 64, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_List.json new file mode 100644 index 000000000000..3403d284d1c3 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_List.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "galleryName": "DefaultDevGallery", + "imageName": "Win11" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DefaultDevGallery/images/Win11/versions/1.0.0", + "name": "1.0.0", + "type": "Microsoft.DevCenter/devcenters/galleries/images/versions", + "properties": { + "publishedDate": "2021-12-01T12:45:16.845Z", + "excludeFromLatest": false, + "osDiskImageSizeInGb": 64, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_ListByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_ListByProject.json new file mode 100644 index 000000000000..db4bcfc15f66 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ImageVersions_ListByProject.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "myProject", + "imageName": "~gallery~DefaultDevGallery~ContosoImageDefinition" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/project/myProject/images/~gallery~DefaultDevGallery~ContosoImageDefinition/versions/1.0.0", + "name": "1.0.0", + "type": "Microsoft.DevCenter/project/images/versions", + "properties": { + "publishedDate": "2021-12-01T12:45:16.845Z", + "excludeFromLatest": false, + "osDiskImageSizeInGb": 64, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_Get.json new file mode 100644 index 000000000000..1239625abd32 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "galleryName": "DefaultDevGallery", + "imageName": "ContosoBaseImage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DefaultDevGallery/images/ContosoBaseImage", + "name": "ContosoBaseImage", + "type": "Microsoft.DevCenter/devcenters/galleries/images", + "properties": { + "description": "Standard Windows Dev/Test image.", + "publisher": "Contoso", + "offer": "Finance", + "sku": "Backend", + "recommendedMachineConfiguration": { + "memory": { + "min": 256, + "max": 512 + }, + "vCPUs": { + "min": 4, + "max": 8 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_GetByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_GetByProject.json new file mode 100644 index 000000000000..175b4fb467cc --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_GetByProject.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "myProject", + "imageName": "~gallery~DefaultDevGallery~ContosoBaseImage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/project/myProject/images/~gallery~DefaultDevGallery~ContosoBaseImage", + "name": "ContosoBaseImage", + "type": "Microsoft.DevCenter/project/images", + "properties": { + "description": "Standard Windows Dev/Test image.", + "publisher": "Contoso", + "offer": "Finance", + "sku": "Backend", + "recommendedMachineConfiguration": { + "memory": { + "min": 256, + "max": 512 + }, + "vCPUs": { + "min": 4, + "max": 8 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByDevCenter.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByDevCenter.json new file mode 100644 index 000000000000..bdc814bf14d8 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByDevCenter.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DevGallery/images/ContosoBaseImage", + "name": "ContosoBaseImage", + "type": "Microsoft.DevCenter/devcenters/galleries/images", + "properties": { + "description": "Windows 10 Enterprise + OS Optimizations 1909", + "publisher": "MicrosoftWindowsDesktop", + "offer": "windows-ent-cpc", + "sku": "19h2-ent-cpc-os-g2", + "recommendedMachineConfiguration": { + "memory": { + "min": 128, + "max": 256 + }, + "vCPUs": { + "min": 2, + "max": 4 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + }, + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DevGallery/images/ContosoBaseImage2", + "name": "ContosoBaseImage2", + "type": "Microsoft.DevCenter/devcenters/galleries/images", + "properties": { + "description": "Standard Windows Dev/Test image.", + "publisher": "Contoso", + "offer": "Finance", + "sku": "Backend", + "recommendedMachineConfiguration": { + "memory": { + "min": 256, + "max": 512 + }, + "vCPUs": { + "min": 4, + "max": 8 + } + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByGallery.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByGallery.json new file mode 100644 index 000000000000..fe7819204c38 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByGallery.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "devCenterName": "Contoso", + "galleryName": "DevGallery" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DevGallery/images/ContosoBaseImage", + "name": "ContosoBaseImage", + "type": "Microsoft.DevCenter/devcenters/galleries/images", + "properties": { + "description": "Windows 10 Enterprise + OS Optimizations 1909", + "publisher": "MicrosoftWindowsDesktop", + "offer": "windows-ent-cpc", + "sku": "19h2-ent-cpc-os-g2", + "recommendedMachineConfiguration": { + "memory": { + "min": 128, + "max": 256 + }, + "vCPUs": { + "min": 2, + "max": 4 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + }, + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DevGallery/images/ContosoBaseImage2", + "name": "ContosoBaseImage2", + "type": "Microsoft.DevCenter/devcenters/galleries/images", + "properties": { + "description": "Standard Windows Dev/Test image.", + "publisher": "Contoso", + "offer": "Finance", + "sku": "Backend", + "recommendedMachineConfiguration": { + "memory": { + "min": 256, + "max": 512 + }, + "vCPUs": { + "min": 4, + "max": 8 + } + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByProject.json new file mode 100644 index 000000000000..1ee1b1caac24 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Images_ListByProject.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "myProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myProject/images/~gallery~DefaultDevGallery~ContosoBaseImage", + "name": "~gallery~DefaultDevGallery~ContosoBaseImage", + "type": "Microsoft.DevCenter/project/images", + "properties": { + "description": "Windows 10 Enterprise + OS Optimizations 1909", + "publisher": "MicrosoftWindowsDesktop", + "offer": "windows-ent-cpc", + "sku": "19h2-ent-cpc-os-g2", + "recommendedMachineConfiguration": { + "memory": { + "min": 128, + "max": 256 + }, + "vCPUs": { + "min": 2, + "max": 4 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + }, + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myProject/images/~catalog~DefaultCatalog~DefaultImage", + "name": "~catalog~DefaultCatalog~DefaultImage", + "type": "Microsoft.DevCenter/project/images", + "properties": { + "description": "Windows 10 Enterprise + OS Optimizations 1909", + "publisher": "MicrosoftWindowsDesktop", + "offer": "windows-ent-cpc", + "sku": "19h2-ent-cpc-os-g2", + "recommendedMachineConfiguration": { + "memory": { + "min": 128, + "max": 256 + }, + "vCPUs": { + "min": 2, + "max": 4 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + }, + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myProject/images/~gallery~DefaultDevGallery~ContosoImageDefinition", + "name": "~gallery~DefaultDevGallery~ContosoImageDefinition", + "type": "Microsoft.DevCenter/project/images", + "properties": { + "description": "Standard Windows Dev/Test image.", + "publisher": "Contoso", + "offer": "Finance", + "sku": "Backend", + "recommendedMachineConfiguration": { + "memory": { + "min": 256, + "max": 512 + }, + "vCPUs": { + "min": 4, + "max": 8 + } + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Delete.json new file mode 100644 index 000000000000..7bd932a6a62e --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "networkConnectionName": "eastusnetwork" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Get.json new file mode 100644 index 000000000000..03ccad3e9f40 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "networkConnectionName": "uswest3network" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network", + "name": "uswest3network", + "type": "Microsoft.DevCenter/networkconnections", + "properties": { + "domainJoinType": "HybridAzureADJoin", + "domainName": "mydomaincontroller.local", + "domainUsername": "testuser@mydomaincontroller.local", + "networkingResourceGroupName": "NetworkInterfaces", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default", + "provisioningState": "Succeeded", + "healthCheckStatus": "Passed" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_GetHealthDetails.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_GetHealthDetails.json new file mode 100644 index 000000000000..77c85ef5ef52 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_GetHealthDetails.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "networkConnectionName": "eastusnetwork" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/eastusnetwork/healthchecks/latest", + "name": "latest", + "type": "Microsoft.DevCenter/networkconnections/healthchecks", + "properties": { + "startDateTime": "2021-07-03T12:43:14Z", + "endDateTime": "2021-07-03T12:43:15Z", + "healthChecks": [ + { + "displayName": "Azure AD device sync", + "endDateTime": "2021-07-03T12:43:14Z", + "startDateTime": "2021-07-03T12:43:15Z", + "status": "Passed" + } + ] + }, + "systemData": { + "createdBy": "System", + "createdByType": "Application", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "System", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListByResourceGroup.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListByResourceGroup.json new file mode 100644 index 000000000000..680514076f87 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListByResourceGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network", + "name": "uswest3network", + "type": "Microsoft.DevCenter/networkconnections", + "properties": { + "domainJoinType": "HybridAzureADJoin", + "domainName": "mydomaincontroller.local", + "domainUsername": "testuser@mydomaincontroller.local", + "networkingResourceGroupName": "NetworkInterfaces", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListBySubscription.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListBySubscription.json new file mode 100644 index 000000000000..bcf0aadee3f8 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListBySubscription.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network", + "name": "uswest3network", + "type": "Microsoft.DevCenter/networkconnection", + "properties": { + "domainJoinType": "HybridAzureADJoin", + "domainName": "mydomaincontroller.local", + "domainUsername": "testuser@mydomaincontroller.local", + "networkingResourceGroupName": "NetworkInterfaces", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListHealthDetails.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListHealthDetails.json new file mode 100644 index 000000000000..06163706358d --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListHealthDetails.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "networkConnectionName": "uswest3network" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network/healthchecks/latest", + "name": "latest", + "type": "Microsoft.DevCenter/networkconnections/healthchecks", + "properties": { + "startDateTime": "2021-07-03T12:43:14Z", + "endDateTime": "2021-07-03T12:43:15Z", + "healthChecks": [ + { + "displayName": "Azure AD device sync", + "endDateTime": "2021-07-03T12:43:14Z", + "startDateTime": "2021-07-03T12:43:15Z", + "status": "Passed" + } + ] + }, + "systemData": { + "createdBy": "System", + "createdByType": "Application", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "System", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListOutboundNetworkDependenciesEndpoints.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListOutboundNetworkDependenciesEndpoints.json new file mode 100644 index 000000000000..09d22a485a58 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_ListOutboundNetworkDependenciesEndpoints.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "networkConnectionName": "uswest3network" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "category": "Dev Box Service", + "endpoints": [ + { + "domainName": "devbox.azure.com", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + }, + { + "category": "Intune", + "endpoints": [ + { + "domainName": "login.microsoftonline.com", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + }, + { + "category": "Cloud PC", + "endpoints": [ + { + "domainName": "rdweb.wvd.microsoft.com", + "endpointDetails": [ + { + "port": 443 + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Patch.json new file mode 100644 index 000000000000..f1e590af3a7d --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Patch.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "networkConnectionName": "uswest3network", + "body": { + "properties": { + "domainPassword": "New Password value for user" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network", + "name": "uswest3network", + "type": "Microsoft.DevCenter/networkconnections", + "properties": { + "domainJoinType": "HybridAzureADJoin", + "domainName": "mydomaincontroller.local", + "domainUsername": "testuser@mydomaincontroller.local", + "networkingResourceGroupName": "NetworkInterfaces", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Put.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Put.json new file mode 100644 index 000000000000..22a0ff08e2e8 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_Put.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "networkConnectionName": "uswest3network", + "body": { + "properties": { + "domainJoinType": "HybridAzureADJoin", + "domainName": "mydomaincontroller.local", + "domainUsername": "testuser@mydomaincontroller.local", + "domainPassword": "Password value for user", + "networkingResourceGroupName": "NetworkInterfaces", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default" + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network", + "name": "uswest3network", + "type": "Microsoft.DevCenter/networkconnections", + "properties": { + "domainJoinType": "HybridAzureADJoin", + "domainName": "mydomaincontroller.local", + "domainUsername": "testuser@mydomaincontroller.local", + "networkingResourceGroupName": "NetworkInterfaces", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network", + "name": "uswest3network", + "type": "Microsoft.DevCenter/networkconnections", + "properties": { + "domainJoinType": "HybridAzureADJoin", + "domainName": "mydomaincontroller.local", + "domainUsername": "testuser@mydomaincontroller.local", + "networkingResourceGroupName": "NetworkInterfaces", + "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default", + "provisioningState": "Created" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_RunHealthChecks.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_RunHealthChecks.json new file mode 100644 index 000000000000..21ace0144673 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/NetworkConnections_RunHealthChecks.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "networkConnectionName": "uswest3network" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/OperationStatus_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/OperationStatus_Get.json new file mode 100644 index 000000000000..94a93ff7360a --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/OperationStatus_Get.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "location": "westus3", + "operationId": "3fa1a29d-e807-488d-81d1-f1c5456a08cd" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4", + "status": "Succeeded", + "resourceId": "/subscriptions/{subscriptionId}/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "startTime": "2020-12-01T15:16:29.500Z", + "endTime": "2020-12-01T15:16:55.100Z", + "percentComplete": 100 + } + }, + "202": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4", + "status": "Succeeded", + "resourceId": "/subscriptions/{subscriptionId}/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "startTime": "2020-12-01T15:16:29.500Z", + "endTime": "2020-12-01T15:16:55.100Z", + "percentComplete": 99 + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "default": { + "body": { + "error": { + "code": "OperationNotFound", + "message": "The requested async operation was not found" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Operations_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Operations_Get.json new file mode 100644 index 000000000000..e59b85f510d6 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Operations_Get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DevCenter/devcenters/write", + "display": { + "provider": "Microsoft DevTest Center", + "resource": "Microsoft DevTest Center devcenter resource", + "operation": "write" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Create.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Create.json new file mode 100644 index 000000000000..e07e3b88fd5b --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Create.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan", + "memberName": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "body": { + "properties": { + "memberId": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "memberType": "User" + }, + "tags": { + "CostCode": "12345" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan/members/d702f662-b3f2-4796-9e8c-13c22378ced3", + "type": "Microsoft.DevCenter/plans/members", + "name": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "tags": { + "CostCode": "12345" + }, + "properties": { + "memberId": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "memberType": "User", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan/members/d702f662-b3f2-4796-9e8c-13c22378ced3", + "type": "Microsoft.DevCenter/plans/members", + "name": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "tags": { + "CostCode": "12345" + }, + "properties": { + "memberId": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "memberType": "User", + "provisioningState": "Accepted" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Delete.json new file mode 100644 index 000000000000..1dac889128cf --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan", + "memberName": "d702f662-b3f2-4796-9e8c-13c22378ced3" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Get.json new file mode 100644 index 000000000000..23238348030f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan", + "memberName": "d702f662-b3f2-4796-9e8c-13c22378ced3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan/members/d702f662-b3f2-4796-9e8c-13c22378ced3", + "type": "Microsoft.DevCenter/plans/members", + "name": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "tags": { + "CostCode": "12345" + }, + "properties": { + "memberId": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "memberType": "User", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_List.json new file mode 100644 index 000000000000..8e793e833cb6 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_List.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan/members/d702f662-b3f2-4796-9e8c-13c22378ced3", + "type": "Microsoft.DevCenter/plans/members", + "name": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "tags": { + "CostCode": "12345" + }, + "properties": { + "memberType": "User", + "memberId": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Patch.json new file mode 100644 index 000000000000..7648cadb4513 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/PlanMembers_Patch.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan", + "memberName": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "body": { + "tags": { + "CostCode": "12345" + } + } + }, + "responses": { + "200": { + "body": { + "name": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan/members/d702f662-b3f2-4796-9e8c-13c22378ced3", + "type": "Microsoft.DevCenter/plans/members", + "tags": { + "CostCode": "12345" + }, + "properties": { + "memberId": "d702f662-b3f2-4796-9e8c-13c22378ced3", + "memberType": "User", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Create.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Create.json new file mode 100644 index 000000000000..a3e460ee64d3 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Create.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan", + "body": { + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": {}, + "sku": { + "name": "Preview" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan", + "name": "ContosoPlan", + "type": "Microsoft.DevCenter/plans", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Preview" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan", + "name": "ContosoPlan", + "type": "Microsoft.DevCenter/plans", + "tags": { + "hidden-title": "ContosoPlan", + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Accepted" + }, + "sku": { + "name": "Preview" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Delete.json new file mode 100644 index 000000000000..471f2e9bc197 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Get.json new file mode 100644 index 000000000000..4048e2c2631f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan", + "name": "ContosoPlan", + "type": "Microsoft.DevCenter/plans", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Preview" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_ListByResourceGroup.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_ListByResourceGroup.json new file mode 100644 index 000000000000..d5d3339e563a --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_ListByResourceGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/plans/ContosoPlan", + "name": "ContosoPlan", + "type": "Microsoft.DevCenter/plans", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Preview" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:08.896Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_ListBySubscription.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_ListBySubscription.json new file mode 100644 index 000000000000..cffcf9433597 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_ListBySubscription.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/ContosoPlan", + "name": "ContosoPlan", + "type": "Microsoft.DevCenter/plans", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Preview" + }, + "systemData": { + "createdBy": "string", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:08.896Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Patch.json new file mode 100644 index 000000000000..06994e78e6f2 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Plans_Patch.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "planName": "ContosoPlan", + "body": { + "sku": { + "name": "Preview" + }, + "tags": { + "CostCode": "12345" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/ContosoPlan", + "name": "ContosoPlan", + "type": "Microsoft.DevCenter/plans", + "tags": { + "CostCode": "12345" + }, + "location": "centralus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Preview" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-11T22:00:08.896Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-11T22:00:10.896Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Delete.json new file mode 100644 index 000000000000..11f223e116ec --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "poolName" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Get.json new file mode 100644 index 000000000000..171fa301975f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Get.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "DevPool" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "devBoxCount": 1, + "provisioningState": "Succeeded", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Managed", + "managedVirtualNetworkRegions": [ + "centralus" + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_GetUnhealthyStatus.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_GetUnhealthyStatus.json new file mode 100644 index 000000000000..08ac7b91295d --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_GetUnhealthyStatus.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "DevPool" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Unhealthy", + "healthStatusDetails": [ + { + "code": "NetworkConnectionUnhealthy", + "message": "The Pool's Network Connection is in an unhealthy state. Check the Network Connection's health status for more details." + }, + { + "code": "ImageValidationFailed", + "message": "Image validation has failed. Check the Dev Box Definition's image validation status for more details." + }, + { + "code": "IntuneValidationFailed", + "message": "Intune license validation has failed. The tenant does not have a valid Intune license." + } + ], + "devBoxCount": 1, + "provisioningState": "Succeeded", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Managed", + "managedVirtualNetworkRegions": [ + "centralus" + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_List.json new file mode 100644 index 000000000000..cf35fd59ec5f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_List.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "devBoxCount": 1, + "provisioningState": "Succeeded", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Managed", + "managedVirtualNetworkRegions": [ + "centralus" + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Patch.json new file mode 100644 index 000000000000..777798dd7803 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Patch.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "DevPool", + "body": { + "properties": { + "devBoxDefinitionName": "WebDevBox2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox2", + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "devBoxCount": 1, + "provisioningState": "Succeeded", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Managed", + "managedVirtualNetworkRegions": [ + "centralus" + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Put.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Put.json new file mode 100644 index 000000000000..4a9e0c9fbb2f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_Put.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "DevPool", + "body": { + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Unmanaged" + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "devBoxCount": 1, + "provisioningState": "Succeeded", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Unmanaged", + "managedVirtualNetworkRegions": [] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Pending", + "provisioningState": "Created", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Unmanaged", + "managedVirtualNetworkRegions": [] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_PutWithManagedNetwork.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_PutWithManagedNetwork.json new file mode 100644 index 000000000000..ed8670f92b96 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_PutWithManagedNetwork.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "DevPool", + "body": { + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "managedNetwork", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Managed", + "managedVirtualNetworkRegions": [ + "centralus" + ] + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "managedNetwork", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "devBoxCount": 1, + "provisioningState": "Succeeded", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Managed", + "managedVirtualNetworkRegions": [ + "centralus" + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionName": "WebDevBox", + "networkConnectionName": "managedNetwork", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Pending", + "provisioningState": "Created", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Managed", + "managedVirtualNetworkRegions": [ + "centralus" + ] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_PutWithValueDevBoxDefinition.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_PutWithValueDevBoxDefinition.json new file mode 100644 index 000000000000..b181b8a43b4a --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_PutWithValueDevBoxDefinition.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "DevPool", + "body": { + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionType": "Value", + "devBoxDefinitionName": "", + "devBoxDefinition": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/projects/DevProject/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + } + }, + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Unmanaged" + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionType": "Value", + "devBoxDefinitionName": "", + "devBoxDefinition": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/projects/DevProject/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + } + }, + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "devBoxCount": 1, + "provisioningState": "Succeeded", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Unmanaged", + "managedVirtualNetworkRegions": [] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool", + "name": "DevPool", + "type": "Microsoft.DevCenter/pools", + "properties": { + "displayName": "Developer Pool", + "devBoxDefinitionType": "Value", + "devBoxDefinitionName": "", + "devBoxDefinition": { + "imageReference": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/projects/DevProject/images/exampleImage/version/1.0.0" + }, + "sku": { + "name": "Preview" + } + }, + "networkConnectionName": "Network1-westus2", + "licenseType": "Windows_Client", + "localAdministrator": "Enabled", + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Pending", + "provisioningState": "Created", + "singleSignOnStatus": "Disabled", + "virtualNetworkType": "Unmanaged", + "managedVirtualNetworkRegions": [] + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_RunHealthChecks.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_RunHealthChecks.json new file mode 100644 index 000000000000..5befc70469a0 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Pools_RunHealthChecks.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "DevPool" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectAllowedEnvironmentTypes_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectAllowedEnvironmentTypes_Get.json new file mode 100644 index 000000000000..59b856dcb1e3 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectAllowedEnvironmentTypes_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "Contoso", + "environmentTypeName": "DevTest" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/Contoso/allowedEnvironmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/projects/allowedenvironmenttypes", + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectAllowedEnvironmentTypes_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectAllowedEnvironmentTypes_List.json new file mode 100644 index 000000000000..9157eb95b800 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectAllowedEnvironmentTypes_List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "Contoso" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/Contoso/allowedEnvironmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/projects/allowedenvironmenttypes", + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogEnvironmentDefinitions_GetErrorDetails.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogEnvironmentDefinitions_GetErrorDetails.json new file mode 100644 index 000000000000..638df299e8e5 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogEnvironmentDefinitions_GetErrorDetails.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "myCatalog", + "environmentDefinitionName": "myEnvironmentDefinition" + }, + "responses": { + "200": { + "body": { + "errors": [ + { + "code": "ParameterValueInvalid", + "message": "Expected parameter value for 'InstanceCount' to be integer but found the string 'test'." + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Connect.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Connect.json new file mode 100644 index 000000000000..f9da4b06a4e5 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Connect.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_CreateAdo.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_CreateAdo.json new file mode 100644 index 000000000000..216b7c8fb45f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_CreateAdo.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog", + "body": { + "properties": { + "adoGit": { + "uri": "https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/projects/catalogs", + "properties": { + "adoGit": { + "uri": "https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 0, + "updated": 0, + "unchanged": 0, + "removed": 0, + "validationErrors": 0, + "synchronizationErrors": 0, + "syncedCatalogItemTypes": [ + "EnvironmentDefinition" + ] + }, + "provisioningState": "Accepted", + "connectionState": "Connected", + "syncState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/projects/catalogs", + "properties": { + "adoGit": { + "uri": "https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 0, + "updated": 0, + "unchanged": 0, + "removed": 0, + "validationErrors": 0, + "synchronizationErrors": 0, + "syncedCatalogItemTypes": [ + "EnvironmentDefinition" + ] + }, + "provisioningState": "Accepted", + "connectionState": "Connected", + "syncState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_CreateGitHub.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_CreateGitHub.json new file mode 100644 index 000000000000..8de6f4054414 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_CreateGitHub.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog", + "body": { + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/projects/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 0, + "updated": 0, + "unchanged": 0, + "removed": 0, + "validationErrors": 0, + "synchronizationErrors": 0, + "syncedCatalogItemTypes": [ + "EnvironmentDefinition" + ] + }, + "provisioningState": "Accepted", + "connectionState": "Connected", + "syncState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/projects/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 0, + "updated": 0, + "unchanged": 0, + "removed": 0, + "validationErrors": 0, + "synchronizationErrors": 0, + "syncedCatalogItemTypes": [ + "EnvironmentDefinition" + ] + }, + "provisioningState": "Accepted", + "connectionState": "Connected", + "syncState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Delete.json new file mode 100644 index 000000000000..43f85ae1fd50 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Get.json new file mode 100644 index 000000000000..e1edc017195d --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Get.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/projects/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 1, + "updated": 1, + "unchanged": 1, + "removed": 1, + "validationErrors": 1, + "synchronizationErrors": 1, + "syncedCatalogItemTypes": [ + "EnvironmentDefinition" + ] + }, + "lastConnectionTime": "2020-11-18T18:28:00.314Z", + "lastSyncTime": "2020-11-18T18:28:00.314Z", + "provisioningState": "Succeeded", + "connectionState": "Connected", + "syncState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_GetSyncErrorDetails.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_GetSyncErrorDetails.json new file mode 100644 index 000000000000..d471b9a5631b --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_GetSyncErrorDetails.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog" + }, + "responses": { + "200": { + "body": { + "operationError": { + "code": "Conflict", + "message": "The source control credentials could not be validated successfully." + }, + "conflicts": [ + { + "path": "/Environments/Duplicate/manifest.yaml", + "name": "DuplicateEnvironmentName" + } + ], + "errors": [ + { + "path": "/Environments/Invalid/manifest.yaml", + "errorDetails": [ + { + "code": "ParseError", + "message": "Schema Error Within Catalog Item: Missing Name" + } + ] + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_List.json new file mode 100644 index 000000000000..a45b40ff2b49 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_List.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/Contoso/catalogs", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/projects/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/templates" + }, + "lastSyncStats": { + "added": 1, + "updated": 1, + "unchanged": 1, + "removed": 1, + "validationErrors": 1, + "synchronizationErrors": 1 + }, + "lastConnectionTime": "2020-11-18T18:28:00.314Z", + "lastSyncTime": "2020-11-18T18:28:00.314Z", + "provisioningState": "Succeeded", + "connectionState": "Connected", + "syncState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Patch.json new file mode 100644 index 000000000000..f179ab382cfe --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Patch.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog", + "body": { + "properties": { + "gitHub": { + "path": "/environments" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog", + "name": "CentralCatalog", + "type": "Microsoft.DevCenter/projects/catalogs", + "properties": { + "gitHub": { + "uri": "https://github.com/Contoso/centralrepo-fake.git", + "branch": "main", + "secretIdentifier": "https://contosokv.vault.azure.net/secrets/CentralRepoPat", + "path": "/environments" + }, + "lastSyncStats": { + "added": 1, + "updated": 1, + "unchanged": 1, + "removed": 1, + "validationErrors": 1, + "synchronizationErrors": 1 + }, + "lastConnectionTime": "2020-11-18T18:28:00.314Z", + "lastSyncTime": "2020-11-18T18:28:00.314Z", + "provisioningState": "Succeeded", + "connectionState": "Connected", + "syncState": "Succeeded" + }, + "systemData": { + "createdBy": "User1", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Sync.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Sync.json new file mode 100644 index 000000000000..f9da4b06a4e5 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectCatalogs_Sync.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "catalogName": "CentralCatalog" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2023-10-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Delete.json new file mode 100644 index 000000000000..ee9373f4c724 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "ContosoProj", + "environmentTypeName": "DevTest" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Get.json new file mode 100644 index 000000000000..0cb12e829201 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Get.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "ContosoProj", + "environmentTypeName": "DevTest" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/projects/environmentTypes", + "properties": { + "deploymentTargetId": "/subscriptions/00000000-0000-0000-0000-000000000000", + "status": "Enabled", + "provisioningState": "Succeeded", + "environmentCount": 1, + "creatorRoleAssignment": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + }, + "userRoleAssignments": { + "e45e3m7c-176e-416a-b466-0c5ec8298f8a": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + } + } + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + }, + "tags": { + "CostCenter": "RnD" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_List.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_List.json new file mode 100644 index 000000000000..6f2e62322952 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_List.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "ContosoProj", + "environmentTypeName": "DevTest" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/projects/environmentTypes", + "properties": { + "deploymentTargetId": "/subscriptions/00000000-0000-0000-0000-000000000000", + "status": "Enabled", + "provisioningState": "Succeeded", + "creatorRoleAssignment": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + }, + "userRoleAssignments": { + "e45e3m7c-176e-416a-b466-0c5ec8298f8a": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + } + } + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + }, + "tags": { + "CostCenter": "RnD" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Patch.json new file mode 100644 index 000000000000..255041a2f899 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Patch.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "ContosoProj", + "environmentTypeName": "DevTest", + "body": { + "properties": { + "deploymentTargetId": "/subscriptions/00000000-0000-0000-0000-000000000000", + "status": "Enabled", + "userRoleAssignments": { + "e45e3m7c-176e-416a-b466-0c5ec8298f8a": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": {} + } + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {} + } + }, + "tags": { + "CostCenter": "RnD" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/projects/environmentTypes", + "properties": { + "deploymentTargetId": "/subscriptions/00000000-0000-0000-0000-000000000000", + "status": "Enabled", + "provisioningState": "Succeeded", + "environmentCount": 1, + "creatorRoleAssignment": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + }, + "userRoleAssignments": { + "e45e3m7c-176e-416a-b466-0c5ec8298f8a": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + } + } + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + }, + "tags": { + "CostCenter": "RnD" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Put.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Put.json new file mode 100644 index 000000000000..90d062e10655 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/ProjectEnvironmentTypes_Put.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "ContosoProj", + "environmentTypeName": "DevTest", + "body": { + "properties": { + "deploymentTargetId": "/subscriptions/00000000-0000-0000-0000-000000000000", + "status": "Enabled", + "creatorRoleAssignment": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": {} + } + }, + "userRoleAssignments": { + "e45e3m7c-176e-416a-b466-0c5ec8298f8a": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": {} + } + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {} + } + }, + "tags": { + "CostCenter": "RnD" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/projects/environmentTypes", + "properties": { + "displayName": "DevTest", + "deploymentTargetId": "/subscriptions/00000000-0000-0000-0000-000000000000", + "status": "Enabled", + "provisioningState": "Succeeded", + "environmentCount": 0, + "creatorRoleAssignment": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + }, + "userRoleAssignments": { + "e45e3m7c-176e-416a-b466-0c5ec8298f8a": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + } + } + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + }, + "tags": { + "hidden-title": "Dev", + "CostCenter": "RnD" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "location": "centralus" + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest", + "name": "DevTest", + "type": "Microsoft.DevCenter/projects/environmentTypes", + "properties": { + "displayName": "DevTest", + "deploymentTargetId": "/subscriptions/00000000-0000-0000-0000-000000000000", + "status": "Enabled", + "provisioningState": "Succeeded", + "environmentCount": 0, + "creatorRoleAssignment": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + }, + "userRoleAssignments": { + "e45e3m7c-176e-416a-b466-0c5ec8298f8a": { + "roles": { + "4cbf0b6c-e750-441c-98a7-10da8387e4d6": { + "roleName": "Developer", + "description": "Allows Developer access to project virtual machine resources." + } + } + } + } + }, + "systemData": { + "createdBy": "User1@contoso.com", + "createdByType": "User", + "createdAt": "2020-11-18T18:24:24.818Z", + "lastModifiedBy": "User1@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:24:24.818Z" + }, + "tags": { + "hidden-title": "Dev", + "CostCenter": "RnD" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": { + "clientId": "e35621a5-f615-4a20-940e-de8a84b15abc", + "principalId": "2111b8fc-e123-485a-b408-bf1153189494" + } + } + }, + "location": "centralus" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Delete.json new file mode 100644 index 000000000000..124440de830e --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Get.json new file mode 100644 index 000000000000..8d9b2548e29c --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject", + "name": "DevProject", + "type": "Microsoft.DevCenter/projects", + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "description": "This is my first project.", + "displayName": "Dev", + "catalogSettings": { + "catalogItemSyncTypes": [ + "EnvironmentDefinition" + ] + } + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus", + "tags": { + "hidden-title": "Dev", + "CostCenter": "R&D" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_GetInheritedSettings.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_GetInheritedSettings.json new file mode 100644 index 000000000000..5ef7d3401700 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_GetInheritedSettings.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "Contoso" + }, + "responses": { + "200": { + "body": { + "projectCatalogSettings": { + "catalogItemSyncEnableStatus": "Enabled" + }, + "networkSettings": { + "microsoftHostedNetworkEnableStatus": "Enabled" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_ListByResourceGroup.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_ListByResourceGroup.json new file mode 100644 index 000000000000..d75c60023367 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_ListByResourceGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myproject", + "name": "myproject", + "type": "Microsoft.DevCenter/projects", + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "description": "This is my first project.", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus", + "tags": { + "CostCenter": "R&D" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_ListBySubscription.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_ListBySubscription.json new file mode 100644 index 000000000000..75e802b41e7f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_ListBySubscription.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myproject", + "name": "myproject", + "type": "Microsoft.DevCenter/projects", + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "description": "This is my first project.", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus", + "tags": { + "CostCenter": "R&D" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Patch.json new file mode 100644 index 000000000000..277d0113ee76 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Patch.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "body": { + "properties": { + "description": "This is my first project.", + "displayName": "Dev", + "catalogSettings": { + "catalogItemSyncTypes": [ + "EnvironmentDefinition" + ] + } + }, + "tags": { + "CostCenter": "R&D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject", + "name": "myproject", + "type": "Microsoft.DevCenter/projects", + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "description": "This is my first project. Very exciting.", + "displayName": "Dev", + "catalogSettings": { + "catalogItemSyncTypes": [ + "EnvironmentDefinition" + ] + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus", + "tags": { + "displayName": "Dev", + "CostCenter": "R&D" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Put.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Put.json new file mode 100644 index 000000000000..1d0ba14813e4 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_Put.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "body": { + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "description": "This is my first project.", + "displayName": "Dev" + }, + "location": "centralus", + "tags": { + "CostCenter": "R&D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject", + "name": "DevProject", + "type": "Microsoft.DevCenter/projects", + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "description": "This is my first project.", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus", + "tags": { + "hidden-title": "Dev", + "CostCenter": "R&D" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject", + "name": "DevProject", + "type": "Microsoft.DevCenter/projects", + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "description": "This is my first project.", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus", + "tags": { + "hidden-title": "Dev", + "CostCenter": "R&D" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_PutWithMaxDevBoxPerUser.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_PutWithMaxDevBoxPerUser.json new file mode 100644 index 000000000000..b9da5d4a1aac --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Projects_PutWithMaxDevBoxPerUser.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "body": { + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "description": "This is my first project.", + "maxDevBoxesPerUser": 3 + }, + "location": "centralus", + "tags": { + "CostCenter": "R&D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject", + "name": "DevProject", + "type": "Microsoft.DevCenter/projects", + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "devCenterUri": "https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com", + "description": "This is my first project.", + "maxDevBoxesPerUser": 3, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus", + "tags": { + "CostCenter": "R&D" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject", + "name": "DevProject", + "type": "Microsoft.DevCenter/projects", + "properties": { + "devCenterId": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso", + "description": "This is my first project.", + "maxDevBoxesPerUser": 3, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + }, + "location": "centralus", + "tags": { + "CostCenter": "R&D" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_CreateDailyShutdownPoolSchedule.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_CreateDailyShutdownPoolSchedule.json new file mode 100644 index 000000000000..406336f69e51 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_CreateDailyShutdownPoolSchedule.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "DevProject", + "poolName": "DevPool", + "scheduleName": "autoShutdown", + "body": { + "properties": { + "state": "Enabled", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown", + "name": "autoShutdown", + "type": "Microsoft.DevCenter/pools/schedules", + "properties": { + "state": "Enabled", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown", + "name": "autoShutdown", + "type": "Microsoft.DevCenter/pools/schedules", + "properties": { + "state": "Enabled", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30", + "provisioningState": "Accepted" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Delete.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Delete.json new file mode 100644 index 000000000000..024bdd60508d --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "TestProject", + "poolName": "DevPool", + "scheduleName": "autoShutdown" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Get.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Get.json new file mode 100644 index 000000000000..d4293e677d58 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Get.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "TestProject", + "poolName": "DevPool", + "scheduleName": "autoShutdown" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown", + "name": "autoShutdown", + "type": "Microsoft.DevCenter/pools/schedules", + "properties": { + "state": "Enabled", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_ListByPool.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_ListByPool.json new file mode 100644 index 000000000000..d5f207a2829b --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_ListByPool.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "TestProject", + "poolName": "DevPool" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown", + "name": "autoShutdown", + "type": "Microsoft.DevCenter/pools/schedules", + "properties": { + "state": "Enabled", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Patch.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Patch.json new file mode 100644 index 000000000000..e008829898f4 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Schedules_Patch.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "TestProject", + "poolName": "DevPool", + "scheduleName": "autoShutdown", + "body": { + "properties": { + "time": "18:00" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown", + "name": "autoShutdown", + "type": "Microsoft.DevCenter/pools/schedules", + "properties": { + "state": "Enabled", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30", + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-11-18T18:00:36.993Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-11-18T18:30:36.993Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4?api-version=2024-07-01-preview" + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Skus_ListByProject.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Skus_ListByProject.json new file mode 100644 index 000000000000..e221d9809e40 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Skus_ListByProject.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "resourceGroupName": "rg1", + "projectName": "myProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "projects/pools", + "name": "Large", + "tier": "Premium", + "locations": [ + "CentralUS" + ] + }, + { + "resourceType": "projects/pools", + "name": "Medium", + "tier": "Standard", + "locations": [ + "CentralUS" + ] + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Skus_ListBySubscription.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Skus_ListBySubscription.json new file mode 100644 index 000000000000..f9252bed19f8 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Skus_ListBySubscription.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "projects/pools", + "name": "Large", + "tier": "Premium", + "locations": [ + "CentralUS" + ] + }, + { + "resourceType": "projects/pools", + "name": "Medium", + "tier": "Standard", + "locations": [ + "CentralUS" + ] + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Usages_ListByLocation.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Usages_ListByLocation.json new file mode 100644 index 000000000000..7851b436ca7f --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/examples/Usages_ListByLocation.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-07-01-preview", + "subscriptionId": "0ac520ee-14c0-480f-b6c9-0a90c58ffff", + "location": "westus" + }, + "responses": { + "200": { + "body": { + "nextLink": null, + "value": [ + { + "currentValue": 2, + "limit": 8, + "unit": "Count", + "name": { + "value": "devcenters" + }, + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/Microsoft.DevCenter/locations/westus/quotas/devcenters" + }, + { + "currentValue": 5, + "limit": 30, + "unit": "Count", + "name": { + "value": "projects" + }, + "id": "/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/Microsoft.DevCenter/locations/westus/quotas/projects" + } + ] + } + } + } +} diff --git a/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/vdi.json b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/vdi.json new file mode 100644 index 000000000000..84cf9babc581 --- /dev/null +++ b/specification/devcenter/resource-manager/Microsoft.DevCenter/preview/2024-07-01-preview/vdi.json @@ -0,0 +1,1958 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-07-01-preview", + "title": "DevCenter", + "description": "DevCenter Management API" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.DevCenter/skus": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "SKUs" + ], + "description": "Lists the Microsoft.DevCenter SKUs available in a subscription", + "operationId": "Skus_ListBySubscription", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Skus_ListBySubscription": { + "$ref": "./examples/Skus_ListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/pools": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Pools" + ], + "description": "Lists pools for a project", + "operationId": "Pools_ListByProject", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Pools_ListByProject": { + "$ref": "./examples/Pools_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/pools/{poolName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + } + ], + "get": { + "tags": [ + "Pools" + ], + "description": "Gets a machine pool", + "operationId": "Pools_Get", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Pool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Pools_Get": { + "$ref": "./examples/Pools_Get.json" + }, + "Pools_GetUnhealthyStatus": { + "$ref": "./examples/Pools_GetUnhealthyStatus.json" + } + } + }, + "put": { + "tags": [ + "Pools" + ], + "description": "Creates or updates a machine pool", + "operationId": "Pools_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Represents a machine pool", + "required": true, + "schema": { + "$ref": "#/definitions/Pool" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Pool" + } + }, + "201": { + "description": "Created. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Pool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Pools_CreateOrUpdate": { + "$ref": "./examples/Pools_Put.json" + }, + "Pools_CreateOrUpdateWithManagedNetwork": { + "$ref": "./examples/Pools_PutWithManagedNetwork.json" + }, + "Pools_CreateOrUpdateWithValueDevBoxDefinition": { + "$ref": "./examples/Pools_PutWithValueDevBoxDefinition.json" + } + } + }, + "patch": { + "tags": [ + "Pools" + ], + "description": "Partially updates a machine pool", + "operationId": "Pools_Update", + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Represents a machine pool", + "required": true, + "schema": { + "$ref": "#/definitions/PoolUpdate" + } + } + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Pool" + } + }, + "202": { + "description": "Accepted. Operation will complete asynchronously", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Pools_Update": { + "$ref": "./examples/Pools_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Pools" + ], + "description": "Deletes a machine pool", + "operationId": "Pools_Delete", + "parameters": [], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Pools_Delete": { + "$ref": "./examples/Pools_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/pools/{poolName}/runHealthChecks": { + "post": { + "tags": [ + "Pools" + ], + "description": "Triggers a refresh of the pool status.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + } + ], + "operationId": "Pools_RunHealthChecks", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Initiating pool status refresh.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Pools_RefreshStatus": { + "$ref": "./examples/Pools_RunHealthChecks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/pools/{poolName}/schedules": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Schedules" + ], + "description": "Lists schedules for a pool", + "operationId": "Schedules_ListByPool", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ScheduleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Schedules_ListByPool": { + "$ref": "./examples/Schedules_ListByPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/projects/{projectName}/pools/{poolName}/schedules/{scheduleName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "$ref": "#/parameters/ScheduleNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Schedules" + ], + "description": "Gets a schedule resource.", + "operationId": "Schedules_Get", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Schedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Schedules_GetByPool": { + "$ref": "./examples/Schedules_Get.json" + } + } + }, + "put": { + "tags": [ + "Schedules" + ], + "description": "Creates or updates a Schedule.", + "operationId": "Schedules_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Represents a scheduled task", + "required": true, + "schema": { + "$ref": "#/definitions/Schedule" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Schedule" + } + }, + "201": { + "description": "Created. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Schedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Schedules_CreateDailyShutdownPoolSchedule": { + "$ref": "./examples/Schedules_CreateDailyShutdownPoolSchedule.json" + } + } + }, + "patch": { + "tags": [ + "Schedules" + ], + "description": "Partially updates a Scheduled.", + "operationId": "Schedules_Update", + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Represents a scheduled task.", + "required": true, + "schema": { + "$ref": "#/definitions/ScheduleUpdate" + } + } + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Schedule" + } + }, + "202": { + "description": "Accepted. Operation will complete asynchronously", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Schedules_Update": { + "$ref": "./examples/Schedules_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Schedules" + ], + "description": "Deletes a Scheduled.", + "operationId": "Schedules_Delete", + "parameters": [], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Schedules_Delete": { + "$ref": "./examples/Schedules_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevCenter/networkConnections": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Network Connections" + ], + "description": "Lists network connections in a subscription", + "operationId": "NetworkConnections_ListBySubscription", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/NetworkConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_ListBySubscription": { + "$ref": "./examples/NetworkConnections_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/networkConnections": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + } + ], + "get": { + "tags": [ + "Network Connections" + ], + "description": "Lists network connections in a resource group", + "operationId": "NetworkConnections_ListByResourceGroup", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/NetworkConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_ListByResourceGroup": { + "$ref": "./examples/NetworkConnections_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/networkConnections/{networkConnectionName}": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkConnectionName" + } + ], + "get": { + "tags": [ + "Network Connections" + ], + "description": "Gets a network connection resource", + "operationId": "NetworkConnections_Get", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/NetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_Get": { + "$ref": "./examples/NetworkConnections_Get.json" + } + } + }, + "put": { + "tags": [ + "Network Connections" + ], + "description": "Creates or updates a Network Connections resource", + "operationId": "NetworkConnections_CreateOrUpdate", + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Represents network connection", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConnection" + } + } + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "Accepted. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConnection" + } + }, + "201": { + "description": "Created. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_CreateOrUpdate": { + "$ref": "./examples/NetworkConnections_Put.json" + } + } + }, + "patch": { + "tags": [ + "Network Connections" + ], + "description": "Partially updates a Network Connection", + "operationId": "NetworkConnections_Update", + "parameters": [ + { + "in": "body", + "name": "body", + "description": "Represents network connection", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConnectionUpdate" + } + } + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/NetworkConnection" + } + }, + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_Update": { + "$ref": "./examples/NetworkConnections_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Network Connections" + ], + "description": "Deletes a Network Connections resource", + "operationId": "NetworkConnections_Delete", + "parameters": [], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_Delete": { + "$ref": "./examples/NetworkConnections_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/networkConnections/{networkConnectionName}/healthChecks": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + }, + { + "$ref": "#/parameters/NetworkConnectionName" + } + ], + "get": { + "tags": [ + "Network Connections" + ], + "description": "Lists health check status details", + "operationId": "NetworkConnections_ListHealthDetails", + "parameters": [], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/HealthCheckStatusDetailsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_ListHealthDetails": { + "$ref": "./examples/NetworkConnections_ListHealthDetails.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/networkConnections/{networkConnectionName}/healthChecks/latest": { + "get": { + "tags": [ + "Network Connections" + ], + "description": "Gets health check status details.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkConnectionName" + } + ], + "operationId": "NetworkConnections_GetHealthDetails", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/HealthCheckStatusDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_GetHealthDetails": { + "$ref": "./examples/NetworkConnections_GetHealthDetails.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/networkConnections/{networkConnectionName}/runHealthChecks": { + "post": { + "tags": [ + "Network Connection" + ], + "description": "Triggers a new health check run. The execution and health check result can be tracked via the network Connection health check details", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkConnectionName" + } + ], + "operationId": "NetworkConnections_RunHealthChecks", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "responses": { + "202": { + "description": "Accepted. Initiating health checks.", + "headers": { + "Location": { + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NetworkConnections_RunHealthChecks": { + "$ref": "./examples/NetworkConnections_RunHealthChecks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevCenter/networkConnections/{networkConnectionName}/outboundNetworkDependenciesEndpoints": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "commonDefinitions.json#/parameters/TopParameter" + }, + { + "$ref": "#/parameters/NetworkConnectionName" + } + ], + "get": { + "tags": [ + "Network Connection" + ], + "operationId": "NetworkConnections_ListOutboundNetworkDependenciesEndpoints", + "description": "Lists the endpoints that agents may call as part of Dev Box service administration. These FQDNs should be allowed for outbound access in order for the Dev Box service to function.", + "parameters": [], + "x-ms-examples": { + "ListOutboundNetworkDependencies": { + "$ref": "./examples/NetworkConnections_ListOutboundNetworkDependenciesEndpoints.json" + } + }, + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of outbound network dependencies.", + "schema": { + "$ref": "#/definitions/OutboundEnvironmentEndpointCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "SkuListResult": { + "description": "Results of the Microsoft.DevCenter SKU list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "commonDefinitions.json#/definitions/DevCenterSku" + }, + "x-ms-identifiers": [], + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Pool": { + "description": "A pool of Virtual Machines.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Pool properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PoolProperties" + } + } + }, + "PoolUpdateProperties": { + "description": "Properties of a Pool. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "devBoxDefinitionType": { + "description": "Indicates if the pool is created from an existing Dev Box Definition or if one is provided directly.", + "$ref": "#/definitions/PoolDevBoxDefinitionType" + }, + "devBoxDefinitionName": { + "description": "Name of a Dev Box definition in parent Project of this Pool. Will be ignored if devBoxDefinitionType is Value.", + "type": "string" + }, + "devBoxDefinition": { + "description": "A definition of the machines that are created from this Pool. Will be ignored if devBoxDefinitionType is Reference or not provided.", + "$ref": "#/definitions/PoolDevBoxDefinition" + }, + "networkConnectionName": { + "description": "Name of a Network Connection in parent Project of this Pool", + "type": "string" + }, + "licenseType": { + "description": "Specifies the license type indicating the caller has already acquired licenses for the Dev Boxes that will be created.", + "$ref": "#/definitions/LicenseType" + }, + "localAdministrator": { + "description": "Indicates whether owners of Dev Boxes in this pool are added as local administrators on the Dev Box.", + "$ref": "#/definitions/LocalAdminStatus" + }, + "stopOnDisconnect": { + "description": "Stop on disconnect configuration settings for Dev Boxes created in this pool.", + "$ref": "#/definitions/StopOnDisconnectConfiguration" + }, + "singleSignOnStatus": { + "description": "Indicates whether Dev Boxes in this pool are created with single sign on enabled. The also requires that single sign on be enabled on the tenant.", + "$ref": "#/definitions/SingleSignOnStatus" + }, + "displayName": { + "type": "string", + "description": "The display name of the pool." + }, + "virtualNetworkType": { + "description": "Indicates whether the pool uses a Virtual Network managed by Microsoft or a customer provided network.", + "$ref": "#/definitions/VirtualNetworkType" + }, + "managedVirtualNetworkRegions": { + "type": "array", + "description": "The regions of the managed virtual network (required when managedNetworkType is Managed).", + "items": { + "type": "string" + } + } + } + }, + "PoolProperties": { + "type": "object", + "description": "Properties of a Pool", + "allOf": [ + { + "$ref": "#/definitions/PoolUpdateProperties" + } + ], + "properties": { + "healthStatus": { + "description": "Overall health status of the Pool. Indicates whether or not the Pool is available to create Dev Boxes.", + "$ref": "#/definitions/HealthStatus", + "readOnly": true + }, + "healthStatusDetails": { + "description": "Details on the Pool health status to help diagnose issues. This is only populated when the pool status indicates the pool is in a non-healthy state", + "type": "array", + "items": { + "$ref": "#/definitions/HealthStatusDetail" + }, + "x-ms-identifiers": [ + "code" + ], + "readOnly": true + }, + "devBoxCount": { + "description": "Indicates the number of provisioned Dev Boxes in this pool.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + } + }, + "required": [ + "devBoxDefinitionName", + "networkConnectionName", + "licenseType", + "localAdministrator" + ] + }, + "PoolDevBoxDefinition": { + "description": "Represents a definition for a Developer Machine.", + "type": "object", + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Image reference information." + }, + "sku": { + "description": "The SKU for Dev Boxes created from the Pool.", + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Sku" + }, + "activeImageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Image reference information for the currently active image (only populated during updates).", + "readOnly": true + } + } + }, + "HealthStatus": { + "description": "Health status indicating whether a pool is available to create Dev Boxes.", + "enum": [ + "Unknown", + "Pending", + "Healthy", + "Warning", + "Unhealthy" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthStatus", + "modelAsString": true + } + }, + "HealthStatusDetail": { + "type": "object", + "description": "Pool health status detail.", + "properties": { + "code": { + "type": "string", + "description": "An identifier for the issue.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "A message describing the issue, intended to be suitable for display in a user interface", + "readOnly": true + } + } + }, + "LicenseType": { + "description": "License Types", + "enum": [ + "Windows_Client" + ], + "type": "string", + "x-ms-enum": { + "name": "LicenseType", + "modelAsString": true + } + }, + "LocalAdminStatus": { + "description": "Local Administrator enable or disable status. Indicates whether owners of Dev Boxes are added as local administrators on the Dev Box.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "LocalAdminStatus", + "modelAsString": true + } + }, + "SingleSignOnStatus": { + "description": "SingleSignOn (SSO) enable or disable status. Indicates whether Dev Boxes in the Pool will have SSO enabled or disabled.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "SingleSignOnStatus", + "modelAsString": true + } + }, + "VirtualNetworkType": { + "description": "Indicates a pool uses a Virtual Network managed by Microsoft (Managed), or a customer provided Network (Unmanaged).", + "type": "string", + "enum": [ + "Managed", + "Unmanaged" + ], + "x-ms-enum": { + "name": "VirtualNetworkType", + "modelAsString": true + } + }, + "PoolDevBoxDefinitionType": { + "description": "Indicates if the pool is created from an existing Dev Box Definition or if one is provided directly.", + "type": "string", + "enum": [ + "Reference", + "Value" + ], + "x-ms-enum": { + "name": "PoolDevBoxDefinitionType", + "modelAsString": true + } + }, + "StopOnDisconnectConfiguration": { + "type": "object", + "description": "Stop on disconnect configuration settings for Dev Boxes created in this pool.", + "properties": { + "status": { + "description": "Whether the feature to stop the Dev Box on disconnect once the grace period has lapsed is enabled.", + "$ref": "#/definitions/StopOnDisconnectEnableStatus" + }, + "gracePeriodMinutes": { + "description": "The specified time in minutes to wait before stopping a Dev Box once disconnect is detected.", + "type": "integer", + "format": "int32" + } + } + }, + "StopOnDisconnectEnableStatus": { + "description": "Stop on disconnect enable or disable status. Indicates whether stop on disconnect to is either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "StopOnDisconnectEnableStatus", + "modelAsString": true + } + }, + "PoolListResult": { + "description": "Results of the machine pool list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Pool" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "PoolUpdate": { + "description": "The pool properties for partial update. Properties not provided in the update request will not be changed.", + "type": "object", + "allOf": [ + { + "$ref": "commonDefinitions.json#/definitions/TrackedResourceUpdate" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PoolUpdateProperties", + "description": "Properties of a pool to be updated." + } + } + }, + "ImageReference": { + "type": "object", + "description": "Image reference information", + "properties": { + "id": { + "description": "Image ID, or Image version ID. When Image ID is provided, its latest version will be used.", + "type": "string" + }, + "exactVersion": { + "type": "string", + "readOnly": true, + "description": "The actual version of the image after use. When id references a gallery image latest version, this will indicate the actual version in use." + } + } + }, + "ImageValidationStatus": { + "description": "Image validation status", + "enum": [ + "Unknown", + "Pending", + "Succeeded", + "Failed", + "TimedOut" + ], + "type": "string", + "x-ms-enum": { + "name": "ImageValidationStatus", + "modelAsString": true + } + }, + "ImageValidationErrorDetails": { + "type": "object", + "description": "Image validation error details", + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error." + }, + "message": { + "type": "string", + "description": "A message describing the error." + } + } + }, + "CatalogResourceValidationStatus": { + "description": "Catalog resource validation status", + "enum": [ + "Unknown", + "Pending", + "Succeeded", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "CatalogResourceValidationStatus", + "modelAsString": true + } + }, + "CatalogResourceValidationErrorDetails": { + "type": "object", + "description": "List of validator error details. Populated when changes are made to the resource or its dependent resources that impact the validity of the Catalog resource.", + "properties": { + "errors": { + "description": "Errors associated with resources synchronized from the catalog.", + "type": "array", + "items": { + "$ref": "#/definitions/CatalogErrorDetails" + }, + "x-ms-identifiers": [], + "readOnly": true + } + } + }, + "CatalogErrorDetails": { + "type": "object", + "description": "Catalog error details", + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error." + }, + "message": { + "type": "string", + "description": "A message describing the error." + } + } + }, + "NetworkConnection": { + "type": "object", + "description": "Network related settings", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Properties of a Network Connection", + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProperties" + } + } + }, + "NetworkConnectionUpdate": { + "description": "The network connection properties for partial update. Properties not provided in the update request will not be changed.", + "type": "object", + "allOf": [ + { + "$ref": "commonDefinitions.json#/definitions/TrackedResourceUpdate" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkConnectionUpdateProperties", + "description": "Properties of a network connection resource to be updated." + } + } + }, + "NetworkConnectionUpdateProperties": { + "description": "Properties of network connection. These properties can be updated after the resource has been created.", + "type": "object", + "properties": { + "subnetId": { + "description": "The subnet to attach Virtual Machines to", + "type": "string" + }, + "domainName": { + "description": "Active Directory domain name", + "type": "string" + }, + "organizationUnit": { + "description": "Active Directory domain Organization Unit (OU)", + "type": "string" + }, + "domainUsername": { + "description": "The username of an Active Directory account (user or service account) that has permissions to create computer objects in Active Directory. Required format: admin@contoso.com.", + "type": "string" + }, + "domainPassword": { + "description": "The password for the account used to join domain", + "type": "string", + "x-ms-secret": true + } + } + }, + "NetworkProperties": { + "description": "Network properties", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/NetworkConnectionUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + }, + "healthCheckStatus": { + "description": "Overall health status of the network connection. Health checks are run on creation, update, and periodically to validate the network connection.", + "$ref": "#/definitions/HealthCheckStatus", + "readOnly": true + }, + "networkingResourceGroupName": { + "description": "The name for resource group where NICs will be placed.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "domainJoinType": { + "description": "AAD Join type.", + "$ref": "#/definitions/DomainJoinType", + "x-ms-mutability": [ + "read", + "create" + ] + } + }, + "required": [ + "subnetId", + "domainJoinType" + ] + }, + "NetworkConnectionListResult": { + "description": "Result of the network connection list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/NetworkConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "DomainJoinType": { + "description": "Active Directory join type", + "enum": [ + "HybridAzureADJoin", + "AzureADJoin", + "None" + ], + "type": "string", + "x-ms-enum": { + "name": "DomainJoinType", + "modelAsString": true + } + }, + "HealthCheckStatus": { + "description": "Health check status values", + "enum": [ + "Unknown", + "Pending", + "Running", + "Passed", + "Warning", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthCheckStatus", + "modelAsString": true + } + }, + "HealthCheckStatusDetails": { + "description": "Health Check details.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Health check status details properties.", + "$ref": "#/definitions/HealthCheckStatusDetailsProperties" + } + } + }, + "HealthCheckStatusDetailsProperties": { + "description": "Health Check properties.", + "type": "object", + "properties": { + "startDateTime": { + "type": "string", + "description": "Start time of last execution of the health checks.", + "readOnly": true, + "format": "date-time" + }, + "endDateTime": { + "type": "string", + "description": "End time of last execution of the health checks.", + "readOnly": true, + "format": "date-time" + }, + "healthChecks": { + "description": "Details for each health check item.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthCheck" + }, + "x-ms-identifiers": [], + "readOnly": true + } + } + }, + "HealthCheck": { + "description": "An individual health check item", + "type": "object", + "properties": { + "status": { + "description": "The status of the health check item.", + "$ref": "#/definitions/HealthCheckStatus", + "readOnly": true + }, + "displayName": { + "description": "The display name of this health check item.", + "type": "string", + "readOnly": true + }, + "startDateTime": { + "description": "Start time of health check item.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "endDateTime": { + "description": "End time of the health check item.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "errorType": { + "description": "The type of error that occurred during this health check.", + "type": "string", + "readOnly": true + }, + "recommendedAction": { + "description": "The recommended action to fix the corresponding error.", + "type": "string", + "readOnly": true + }, + "additionalDetails": { + "description": "Additional details about the health check or the recommended action.", + "type": "string", + "readOnly": true + } + } + }, + "HealthCheckStatusDetailsListResult": { + "description": "Result of the network health check list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthCheckStatusDetails" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "OutboundEnvironmentEndpointCollection": { + "type": "object", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OutboundEnvironmentEndpoint" + }, + "x-ms-identifiers": [ + "category" + ], + "description": "The collection of outbound network dependency endpoints returned by the listing operation." + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + }, + "description": "Values returned by the List operation." + }, + "OutboundEnvironmentEndpoint": { + "type": "object", + "properties": { + "category": { + "type": "string", + "readOnly": true, + "description": "The type of service that the agent connects to." + }, + "endpoints": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EndpointDependency" + }, + "x-ms-identifiers": [ + "domainName" + ], + "description": "The endpoints for this service for which the agent requires outbound access." + } + }, + "description": "A collection of related endpoints from the same service for which the agent requires outbound access." + }, + "EndpointDependency": { + "type": "object", + "properties": { + "domainName": { + "type": "string", + "readOnly": true, + "description": "The domain name of the dependency. Domain names may be fully qualified or may contain a * wildcard." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Human-readable supplemental information about the dependency and when it is applicable." + }, + "endpointDetails": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EndpointDetail" + }, + "x-ms-identifiers": [], + "description": "The list of connection details for this endpoint." + } + }, + "description": "A domain name and connection details used to access a dependency." + }, + "EndpointDetail": { + "type": "object", + "properties": { + "port": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The port an endpoint is connected to." + } + }, + "description": "Details about the connection between the Batch service and the endpoint." + }, + "Schedule": { + "type": "object", + "description": "Represents a Schedule to execute a task.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "Properties of a Schedule resource", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScheduleProperties" + } + } + }, + "ScheduleUpdate": { + "description": "The schedule properties for partial update. Properties not provided in the update request will not be changed.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScheduleUpdateProperties", + "description": "Properties of a schedule resource to be updated." + } + } + }, + "ScheduleUpdateProperties": { + "description": "Updatable properties of a Schedule.", + "type": "object", + "allOf": [ + { + "$ref": "commonDefinitions.json#/definitions/TrackedResourceUpdate" + } + ], + "properties": { + "type": { + "description": "Supported type this scheduled task represents.", + "$ref": "#/definitions/ScheduledType" + }, + "frequency": { + "description": "The frequency of this scheduled task.", + "$ref": "#/definitions/ScheduledFrequency" + }, + "time": { + "description": "The target time to trigger the action. The format is HH:MM.", + "type": "string" + }, + "timeZone": { + "description": "The IANA timezone id at which the schedule should execute.", + "type": "string" + }, + "state": { + "description": "Indicates whether or not this scheduled task is enabled.", + "$ref": "#/definitions/ScheduleEnableStatus" + } + } + }, + "ScheduleProperties": { + "description": "The Schedule properties defining when and what to execute.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ScheduleUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "commonDefinitions.json#/definitions/ProvisioningState", + "readOnly": true + } + }, + "required": [ + "type", + "frequency", + "timeZone", + "time" + ] + }, + "ScheduleListResult": { + "description": "Result of the schedule list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Schedule" + }, + "readOnly": true + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "ScheduledType": { + "description": "The supported types for a scheduled task.", + "enum": [ + "StopDevBox" + ], + "type": "string", + "x-ms-enum": { + "name": "ScheduledType", + "modelAsString": true + } + }, + "ScheduledFrequency": { + "description": "The frequency of task execution.", + "enum": [ + "Daily" + ], + "type": "string", + "x-ms-enum": { + "name": "ScheduledFrequency", + "modelAsString": true + } + }, + "ScheduleEnableStatus": { + "description": "Schedule enable or disable status. Indicates whether the schedule applied to is either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ScheduleEnableStatus", + "modelAsString": true + } + } + }, + "parameters": { + "PoolNameParameter": { + "name": "poolName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the pool.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "NetworkConnectionName": { + "name": "networkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Network Connection that can be applied to a Pool.", + "x-ms-parameter-location": "method", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63 + }, + "ScheduleNameParameter": { + "name": "scheduleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the schedule that uniquely identifies it.", + "minLength": 1, + "maxLength": 100, + "pattern": "^[-\\w]+$", + "x-ms-parameter-location": "method" + }, + "FilterParameter": { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName').", + "type": "string", + "required": false, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/devcenter/resource-manager/readme.md b/specification/devcenter/resource-manager/readme.md index b6dbd79266bb..bfe88cff1717 100644 --- a/specification/devcenter/resource-manager/readme.md +++ b/specification/devcenter/resource-manager/readme.md @@ -27,10 +27,25 @@ These are the global settings for devcenter. ``` yaml openapi-type: arm openapi-subtype: rpaas -tag: package-preview-2024-06 +tag: package-preview-2024-07 ``` +### Tag: package-preview-2024-07 + +These settings apply only when `--tag=package-preview-2024-07` is specified on the command line. + +```yaml $(tag) == 'package-preview-2024-07' +input-file: + - Microsoft.DevCenter/preview/2024-07-01-preview/commonDefinitions.json + - Microsoft.DevCenter/preview/2024-07-01-preview/devcenter.json + - Microsoft.DevCenter/preview/2024-07-01-preview/vdi.json +suppressions: + - code: PatchBodyParametersSchema + from: vdi.json + reason: Patch Body comes from common-types v5 Sku object. Keeping here for consistency with existing parts of API to avoid breaking customers. +``` + ### Tag: package-preview-2024-06 These settings apply only when `--tag=package-preview-2024-06` is specified on the command line. From a220053360f9700f81abcdb6142769c85c3bcb27 Mon Sep 17 00:00:00 2001 From: Srikanta <51379715+srnagar@users.noreply.github.com> Date: Tue, 25 Jun 2024 16:33:38 -0700 Subject: [PATCH 19/52] Text Translation: Enable stream style serialization (#29509) --- .../translation/Azure.AI.TextTranslation/tspconfig.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/specification/translation/Azure.AI.TextTranslation/tspconfig.yaml b/specification/translation/Azure.AI.TextTranslation/tspconfig.yaml index 754f49ac6449..0b3630b065d7 100644 --- a/specification/translation/Azure.AI.TextTranslation/tspconfig.yaml +++ b/specification/translation/Azure.AI.TextTranslation/tspconfig.yaml @@ -35,7 +35,6 @@ options: generate-tests: false customization-class: customization/src/main/java/TextTranslationClientBuilderCustomization.java flavor: azure - stream-style-serialization: false "@azure-tools/typespec-ts": package-dir: "ai-translation-text-rest" generateMetadata: false From 1c63635d66ae38cff18045ab416a6572d3e15f6e Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Wed, 26 Jun 2024 10:53:24 +0800 Subject: [PATCH 20/52] Update readme.python.md (#29587) * Update readme.python.md * Create readme.python.md --- .../migrate/resource-manager/readme.md | 5 ++++ .../migrate/resource-manager/readme.python.md | 23 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 specification/migrate/resource-manager/readme.python.md diff --git a/specification/migrate/resource-manager/readme.md b/specification/migrate/resource-manager/readme.md index 975618cb5dd2..c0c31959e15f 100644 --- a/specification/migrate/resource-manager/readme.md +++ b/specification/migrate/resource-manager/readme.md @@ -318,6 +318,7 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net-track2 - repo: azure-sdk-for-go + - repo: azure-sdk-for-python - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-resource-manager-schemas @@ -327,3 +328,7 @@ swagger-to-sdk: ## Go See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) diff --git a/specification/migrate/resource-manager/readme.python.md b/specification/migrate/resource-manager/readme.python.md new file mode 100644 index 000000000000..8d7ab467a695 --- /dev/null +++ b/specification/migrate/resource-manager/readme.python.md @@ -0,0 +1,23 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-migrate +namespace: azure.mgmt.migrate +package-version: 1.0.0b1 +clear-output-folder: true +``` + +``` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/migrate/azure-mgmt-migrate/azure/mgmt/migrate +``` + +``` yaml $(python) +modelerfour: + flatten-models: false +``` From db377f47cf7bf53bf077aa42967112a9783980d5 Mon Sep 17 00:00:00 2001 From: Risheek Rajolu Date: Wed, 26 Jun 2024 09:32:01 -0700 Subject: [PATCH 21/52] [StorageTasks] Bugfix maxpagesize type (#29534) * [StorageTasks] Bugfix maxpagesize type * add sdk-suppressions.yaml --------- Co-authored-by: Alancere <804873052@qq.com> --- .../stable/2023-05-01/storageTaskAssignments.json | 9 ++++++--- .../stable/2023-01-01/storageactions.json | 6 ++++-- .../resource-manager/sdk-suppressions.yaml | 6 ++++++ 3 files changed, 16 insertions(+), 5 deletions(-) create mode 100644 specification/storageactions/resource-manager/sdk-suppressions.yaml diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2023-05-01/storageTaskAssignments.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2023-05-01/storageTaskAssignments.json index 1f6ee88b81b9..63386e78f87b 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2023-05-01/storageTaskAssignments.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2023-05-01/storageTaskAssignments.json @@ -275,7 +275,8 @@ { "name": "$maxpagesize", "in": "query", - "type": "string", + "type": "integer", + "format": "int32", "description": "Optional, specifies the maximum number of storage task assignment Ids to be included in the list response." }, { @@ -326,7 +327,8 @@ { "name": "$maxpagesize", "in": "query", - "type": "string", + "type": "integer", + "format": "int32", "description": "Optional, specifies the maximum number of storage task assignment instances to be included in the list response." }, { @@ -386,7 +388,8 @@ { "name": "$maxpagesize", "in": "query", - "type": "string", + "type": "integer", + "format": "int32", "description": "Optional, specifies the maximum number of storage task assignment instances to be included in the list response." }, { diff --git a/specification/storageactions/resource-manager/Microsoft.StorageActions/stable/2023-01-01/storageactions.json b/specification/storageactions/resource-manager/Microsoft.StorageActions/stable/2023-01-01/storageactions.json index 340053249dd3..5a007ac949c1 100644 --- a/specification/storageactions/resource-manager/Microsoft.StorageActions/stable/2023-01-01/storageactions.json +++ b/specification/storageactions/resource-manager/Microsoft.StorageActions/stable/2023-01-01/storageactions.json @@ -374,7 +374,8 @@ { "name": "$maxpagesize", "in": "query", - "type": "string", + "type": "integer", + "format": "int32", "description": "Optional, specifies the maximum number of Storage Task Assignment Resource IDs to be included in the list response." }, { @@ -425,7 +426,8 @@ { "name": "$maxpagesize", "in": "query", - "type": "string", + "type": "integer", + "format": "int32", "description": "Optional, specifies the maximum number of Storage Task Assignment Resource IDs to be included in the list response." }, { diff --git a/specification/storageactions/resource-manager/sdk-suppressions.yaml b/specification/storageactions/resource-manager/sdk-suppressions.yaml new file mode 100644 index 000000000000..5eaf3d35581f --- /dev/null +++ b/specification/storageactions/resource-manager/sdk-suppressions.yaml @@ -0,0 +1,6 @@ +suppressions: + azure-sdk-for-go: + - package: sdk/resourcemanager/storageactions/armstorageactions + breaking-changes: + - Type of `StorageTaskAssignmentClientListOptions.Maxpagesize` has been changed from `*string` to `*int32` + - Type of `StorageTasksReportClientListOptions.Maxpagesize` has been changed from `*string` to `*int32` \ No newline at end of file From 0ed912fdfaffd5c81eb86b79df0e3b31d978d795 Mon Sep 17 00:00:00 2001 From: Braden Watkins Date: Wed, 26 Jun 2024 10:33:08 -0600 Subject: [PATCH 22/52] Billing/2024 04 01 (#28160) * Baseline for 2024-04-01 from 2020-05-01 * Updates for GA 2024-04-01 * Adding suppression as 'resource' schema is missing properties * Build fixes and PR feedback * tr lint error fix * update example * try fixing python * try removing the override * updating invoice download uri * Update reservation.json * Removing additional properties on policy * updated the resource reference and removed unused override * fixed error response * fix error * updated to proxyResourcewithTags * fix errors * Prettier check fix * merge conflict resolved * Prettier fix * reverted package.json * updated the ref * Prettier check * updated operation.json * add sdk-suppressions.yaml * remove modelerfour.lenient-model-deduplication, first stable * fix sdk-suppressions --------- Co-authored-by: Braden Watkins (from Dev Box) Co-authored-by: Umang Shah Co-authored-by: us6193 Co-authored-by: gaoyp830 <51546332+gaoyp830@users.noreply.github.com> Co-authored-by: Alancere <804873052@qq.com> --- cSpell.json | 8 + .../stable/2024-04-01/agreement.json | 315 +++ .../stable/2024-04-01/associatedTenant.json | 387 +++ .../stable/2024-04-01/availableBalance.json | 230 ++ .../stable/2024-04-01/billingAccount.json | 1324 +++++++++++ .../stable/2024-04-01/billingPermission.json | 830 +++++++ .../stable/2024-04-01/billingProfile.json | 737 ++++++ .../stable/2024-04-01/billingProperty.json | 694 ++++++ .../stable/2024-04-01/billingRequest.json | 751 ++++++ .../2024-04-01/billingRoleAssignment.json | 1953 ++++++++++++++++ .../2024-04-01/billingRoleDefinition.json | 710 ++++++ .../stable/2024-04-01/billingSavingsPlan.json | 1272 ++++++++++ .../2024-04-01/billingSubscription.json | 2082 +++++++++++++++++ .../stable/2024-04-01/customer.json | 379 +++ .../stable/2024-04-01/department.json | 204 ++ .../stable/2024-04-01/enrollmentAccount.json | 352 +++ .../examples/addressValidateInvalid.json | 36 + .../examples/addressValidateValid.json | 19 + .../2024-04-01/examples/agreementByName.json | 25 + .../agreementsListByBillingAccount.json | 62 + .../associatedTenantsCreateOrUpdate.json | 44 + .../examples/associatedTenantsDelete.json | 16 + .../examples/associatedTenantsGet.json | 23 + ...associatedTenantsListByBillingAccount.json | 37 + .../availableBalanceGetByBillingAccount.json | 51 + .../availableBalanceGetByBillingProfile.json | 40 + ...billingAccountForLegacyAccountDetails.json | 26 + .../billingAccountUpdateWithPONumber.json | 63 + .../billingAccountWithExpandForPONumber.json | 41 + ...WithRegistrationNumberWithDefaultType.json | 34 + ...AccountWithRegistrationNumberWithType.json | 35 + .../billingAccountsConfirmTransition.json | 14 + .../examples/billingAccountsGet.json | 28 + .../examples/billingAccountsGetEA.json | 47 + .../billingAccountsGetWithExpand.json | 38 + .../examples/billingAccountsList.json | 85 + ...lingAccountsListWithExpandForPONumber.json | 53 + .../examples/billingAccountsUpdate.json | 56 + ...illingPermissionsListByBillingAccount.json | 39 + ...illingPermissionsListByBillingProfile.json | 40 + .../billingPermissionsListByCustomer.json | 28 + ...issionsListByCustomerAtBillingAccount.json | 27 + .../billingPermissionsListByDepartment.json | 26 + ...ingPermissionsListByEnrollmentAccount.json | 24 + ...illingPermissionsListByInvoiceSection.json | 28 + .../billingProfilesCreateOrUpdate.json | 154 ++ .../examples/billingProfilesDelete.json | 62 + .../examples/billingProfilesGet.json | 87 + .../billingProfilesListByBillingAccount.json | 219 ++ ...filesValidateDeleteEligibilityFailure.json | 36 + ...filesValidateDeleteEligibilitySuccess.json | 12 + .../examples/billingPropertyGetMCA.json | 40 + .../examples/billingPropertyGetMOSP.json | 35 + .../examples/billingPropertyGetMPA.json | 40 + .../billingPropertyPatchCostCenter.json | 45 + ...yPatchSubscriptionServiceUsageAddress.json | 50 + .../billingRequestsCreateOrUpdate.json | 79 + .../examples/billingRequestsGet.json | 38 + .../billingRequestsListByBillingAccount.json | 68 + .../billingRequestsListByBillingProfile.json | 43 + .../billingRequestsListByCustomer.json | 47 + .../billingRequestsListByInvoiceSection.json | 47 + .../examples/billingRequestsListByUser.json | 67 + .../billingRequestsListByUserWithFilter.json | 40 + ...gRoleAssignmentCreateByBillingAccount.json | 36 + ...gRoleAssignmentCreateByBillingProfile.json | 37 + ...billingRoleAssignmentCreateByCustomer.json | 38 + ...gRoleAssignmentCreateByInvoiceSection.json | 38 + ...ignmentCreateOrUpdateByBillingAccount.json | 49 + ...eAssignmentCreateOrUpdateByDepartment.json | 50 + ...mentCreateOrUpdateByEnrollmentAccount.json | 50 + ...gRoleAssignmentDeleteByBillingAccount.json | 11 + ...gRoleAssignmentDeleteByBillingProfile.json | 12 + ...billingRoleAssignmentDeleteByCustomer.json | 13 + ...llingRoleAssignmentDeleteByDepartment.json | 12 + ...leAssignmentDeleteByEnrollmentAccount.json | 12 + ...gRoleAssignmentDeleteByInvoiceSection.json | 13 + ...lingRoleAssignmentGetByBillingAccount.json | 25 + ...lingRoleAssignmentGetByBillingProfile.json | 26 + .../billingRoleAssignmentGetByCustomer.json | 27 + .../billingRoleAssignmentGetByDepartment.json | 25 + ...gRoleAssignmentGetByEnrollmentAccount.json | 25 + ...lingRoleAssignmentGetByInvoiceSection.json | 27 + ...ingRoleAssignmentListByBillingAccount.json | 42 + ...ingRoleAssignmentListByBillingProfile.json | 43 + .../billingRoleAssignmentListByCustomer.json | 44 + ...billingRoleAssignmentListByDepartment.json | 43 + ...RoleAssignmentListByEnrollmentAccount.json | 43 + ...ingRoleAssignmentListByInvoiceSection.json | 44 + ...lingRoleDefinitionGetByBillingAccount.json | 68 + ...lingRoleDefinitionGetByBillingProfile.json | 39 + .../billingRoleDefinitionGetByCustomer.json | 46 + .../billingRoleDefinitionGetByDepartment.json | 34 + ...gRoleDefinitionGetByEnrollmentAccount.json | 33 + ...lingRoleDefinitionGetByInvoiceSection.json | 45 + ...ingRoleDefinitionListByBillingAccount.json | 205 ++ ...ingRoleDefinitionListByBillingProfile.json | 108 + .../billingRoleDefinitionListByCustomer.json | 102 + ...billingRoleDefinitionListByDepartment.json | 55 + ...RoleDefinitionListByEnrollmentAccount.json | 38 + ...ingRoleDefinitionListByInvoiceSection.json | 116 + ...illingSubscriptionAliasCreateOrUpdate.json | 96 + .../examples/billingSubscriptionAliasGet.json | 45 + .../billingSubscriptionAliasList.json | 128 + ...illingSubscriptionGetByBillingProfile.json | 34 + .../examples/billingSubscriptionMove.json | 37 + ...illingSubscriptionValidateMoveFailure.json | 22 + ...illingSubscriptionValidateMoveSuccess.json | 19 + .../examples/billingSubscriptionsCancel.json | 19 + .../examples/billingSubscriptionsDelete.json | 16 + .../examples/billingSubscriptionsGet.json | 45 + ...lingSubscriptionsListByBillingAccount.json | 128 + ...ngSubscriptionsListByBillingProfileEA.json | 29 + ...gSubscriptionsListByBillingProfileMCA.json | 83 + .../billingSubscriptionsListByCustomer.json | 78 + ...iptionsListByCustomerAtBillingAccount.json | 77 + ...gSubscriptionsListByEnrollmentAccount.json | 46 + ...lingSubscriptionsListByInvoiceSection.json | 84 + .../examples/billingSubscriptionsMerge.json | 54 + .../examples/billingSubscriptionsSplit.json | 57 + .../examples/billingSubscriptionsUpdate.json | 55 + .../examples/checkAccessByBillingAccount.json | 26 + .../examples/checkAccessByBillingProfile.json | 27 + .../examples/checkAccessByCustomer.json | 28 + .../examples/checkAccessByDepartment.json | 27 + .../checkAccessByEnrollmentAccount.json | 27 + .../examples/checkAccessByInvoiceSection.json | 28 + .../2024-04-01/examples/customersGet.json | 44 + .../customersGetByBillingAccount.json | 43 + .../customersListByBillingAccount.json | 42 + ...stomersListByBillingAccountWithExpand.json | 47 + .../customersListByBillingProfile.json | 43 + .../2024-04-01/examples/departmentGet.json | 21 + .../departmentsListByBillingAccount.json | 34 + .../enrollmentAccountByDepartment.json | 29 + .../examples/enrollmentAccountGet.json | 28 + ...nrollmentAccountsListByBillingAccount.json | 65 + .../enrollmentAccountsListByDepartment.json | 49 + .../invoiceSectionsCreateOrUpdate.json | 55 + .../examples/invoiceSectionsDelete.json | 17 + .../examples/invoiceSectionsGet.json | 25 + .../invoiceSectionsListByBillingProfile.json | 59 + ...tionsValidateDeleteEligibilityFailure.json | 33 + ...tionsValidateDeleteEligibilitySuccess.json | 13 + ...sWithCreateSubscriptionPermissionList.json | 35 + .../2024-04-01/examples/invoicesAmend.json | 15 + .../invoicesDownloadByBillingAccount.json | 22 + ...invoicesDownloadByBillingSubscription.json | 22 + ...icesDownloadDocumentsByBillingAccount.json | 30 + ...ownloadDocumentsByBillingSubscription.json | 30 + ...voicesDownloadSummaryByBillingAccount.json | 21 + .../2024-04-01/examples/invoicesGet.json | 78 + .../examples/invoicesGetByBillingAccount.json | 79 + .../invoicesGetByBillingSubscription.json | 35 + .../invoicesListByBillingAccount.json | 162 ++ .../invoicesListByBillingProfile.json | 163 ++ .../invoicesListByBillingSubscription.json | 106 + .../2024-04-01/examples/operationsList.json | 21 + .../examples/partnerTransfersCancel.json | 26 + .../examples/partnerTransfersGet.json | 41 + .../examples/partnerTransfersInitiate.json | 44 + .../examples/partnerTransfersList.json | 45 + .../paymentMethodsDeleteAtBillingProfile.json | 17 + .../examples/paymentMethodsDeleteByUser.json | 10 + .../paymentMethodsGetByBillingAccount.json | 21 + .../paymentMethodsGetByBillingProfile.json | 37 + .../examples/paymentMethodsGetByUser.json | 34 + .../paymentMethodsListByBillingAccount.json | 24 + .../paymentMethodsListByBillingProfile.json | 40 + .../examples/paymentMethodsListByUser.json | 61 + .../examples/paymentTermInvalid.json | 26 + .../2024-04-01/examples/paymentTermValid.json | 20 + .../2024-04-01/examples/paymentTermsAdd.json | 42 + .../examples/paymentTermsCancel.json | 36 + .../examples/policiesGetByBillingAccount.json | 23 + .../examples/policiesGetByBillingProfile.json | 22 + .../examples/policiesGetByCustomer.json | 21 + ...policiesGetByCustomerAtBillingAccount.json | 19 + .../examples/policiesGetBySubscription.json | 25 + .../examples/policiesPutByBillingAccount.json | 48 + .../examples/policiesPutByBillingProfile.json | 43 + .../examples/policiesPutByCustomer.json | 35 + ...policiesPutByCustomerAtBillingAccount.json | 34 + .../2024-04-01/examples/productMove.json | 35 + .../examples/productValidateMoveFailure.json | 22 + .../examples/productValidateMoveSuccess.json | 19 + .../2024-04-01/examples/productsGet.json | 31 + .../productsListByBillingAccount.json | 74 + .../productsListByBillingProfile.json | 75 + .../examples/productsListByCustomer.json | 60 + .../productsListByInvoiceSection.json | 76 + .../2024-04-01/examples/productsUpdate.json | 36 + .../examples/recipientTransfersAccept.json | 51 + .../examples/recipientTransfersDecline.json | 21 + .../examples/recipientTransfersGet.json | 37 + .../examples/recipientTransfersList.json | 41 + .../examples/recipientTransfersValidate.json | 41 + .../reservationGetByBillingAccount.json | 105 + ...ionGetByBillingAccountManagementGroup.json | 118 + ...etByBillingAccountSingleResourceGroup.json | 112 + ...rvationGetByBillingAccountSingleScope.json | 112 + .../reservationOrderGetByBillingAccount.json | 40 + ...llingAccountWithExpandPlanInformation.json | 409 ++++ ...reservationOrdersListByBillingAccount.json | 43 + .../reservationUpdateByBillingAccount.json | 116 + ...ervationsGetFromOrderByBillingAccount.json | 77 + .../reservationsListByBillingAccount.json | 91 + .../reservationsListByBillingProfile.json | 92 + ...BillingRoleAssignmentByBillingAccount.json | 48 + ...BillingRoleAssignmentByBillingProfile.json | 49 + ...esolveBillingRoleAssignmentByCustomer.json | 56 + ...BillingRoleAssignmentByInvoiceSection.json | 50 + .../savingsPlanGetByBillingAccount.json | 75 + ...ExpandRenewPropertiesByBillingAccount.json | 99 + ...erExpandedScheduleGetByBillingAccount.json | 342 +++ .../savingsPlanOrderGetByBillingAccount.json | 38 + .../savingsPlanOrderListByBillingAccount.json | 70 + .../savingsPlanUpdateByBillingAccount.json | 96 + ...ngsPlanValidateUpdateByBillingAccount.json | 29 + .../savingsPlansListByBillingAccount.json | 275 +++ .../savingsPlansListBySavingsPlanOrders.json | 68 + .../transactionSummaryGetByInvoice.json | 19 + .../transactionsDownloadByInvoice.json | 21 + .../transactionsListByBillingProfile.json | 136 ++ .../examples/transactionsListByCustomer.json | 137 ++ .../examples/transactionsListByInvoice.json | 130 + .../transactionsListByInvoiceSection.json | 137 ++ .../2024-04-01/examples/transfersCancel.json | 25 + .../2024-04-01/examples/transfersGet.json | 40 + .../examples/transfersInitiate.json | 42 + .../2024-04-01/examples/transfersList.json | 43 + .../stable/2024-04-01/invoice.json | 1364 +++++++++++ .../stable/2024-04-01/invoiceSection.json | 523 +++++ .../stable/2024-04-01/operation.json | 148 ++ .../stable/2024-04-01/payment.json | 661 ++++++ .../stable/2024-04-01/policy.json | 977 ++++++++ .../stable/2024-04-01/product.json | 826 +++++++ .../stable/2024-04-01/reservation.json | 1423 +++++++++++ .../stable/2024-04-01/transaction.json | 862 +++++++ .../stable/2024-04-01/transfers.json | 1225 ++++++++++ .../stable/2024-04-01/types.json | 363 +++ .../billing/resource-manager/readme.md | 312 ++- .../resource-manager/sdk-suppressions.yaml | 703 ++++++ 243 files changed, 33069 insertions(+), 48 deletions(-) create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/agreement.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/associatedTenant.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/availableBalance.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingPermission.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingProperty.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRequest.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRoleAssignment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRoleDefinition.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingSavingsPlan.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingSubscription.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/customer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/department.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/enrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/addressValidateInvalid.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/addressValidateValid.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/agreementByName.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/agreementsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsCreateOrUpdate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsDelete.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/availableBalanceGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/availableBalanceGetByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountForLegacyAccountDetails.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountUpdateWithPONumber.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithExpandForPONumber.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithRegistrationNumberWithDefaultType.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithRegistrationNumberWithType.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsConfirmTransition.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGetEA.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGetWithExpand.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsList.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsListWithExpandForPONumber.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsUpdate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByCustomerAtBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesCreateOrUpdate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesDelete.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesValidateDeleteEligibilityFailure.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesValidateDeleteEligibilitySuccess.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMCA.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMOSP.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMPA.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyPatchCostCenter.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyPatchSubscriptionServiceUsageAddress.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsCreateOrUpdate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByUser.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByUserWithFilter.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasCreateOrUpdate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasList.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionGetByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionMove.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionValidateMoveFailure.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionValidateMoveSuccess.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsCancel.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsDelete.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingProfileEA.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingProfileMCA.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByCustomerAtBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsMerge.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsSplit.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsUpdate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByEnrollmentAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingAccountWithExpand.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/departmentGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/departmentsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountsListByDepartment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsCreateOrUpdate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsDelete.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsValidateDeleteEligibilityFailure.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsValidateDeleteEligibilitySuccess.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsWithCreateSubscriptionPermissionList.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesAmend.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadByBillingSubscription.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadDocumentsByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadDocumentsByBillingSubscription.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadSummaryByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGetByBillingSubscription.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingSubscription.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/operationsList.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersCancel.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersInitiate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersList.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsDeleteAtBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsDeleteByUser.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByUser.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByUser.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermInvalid.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermValid.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermsAdd.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermsCancel.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByCustomerAtBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetBySubscription.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByCustomerAtBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productMove.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productValidateMoveFailure.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productValidateMoveSuccess.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsUpdate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersAccept.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersDecline.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersList.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersValidate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountManagementGroup.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountSingleResourceGroup.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountSingleScope.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrderGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrderGetByBillingAccountWithExpandPlanInformation.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrdersListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationUpdateByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsGetFromOrderByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanGetExpandRenewPropertiesByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderExpandedScheduleGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderGetByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanUpdateByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanValidateUpdateByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlansListByBillingAccount.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlansListBySavingsPlanOrders.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionSummaryGetByInvoice.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsDownloadByInvoice.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByBillingProfile.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByCustomer.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByInvoice.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByInvoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersCancel.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersGet.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersInitiate.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersList.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/invoice.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/invoiceSection.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/operation.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/payment.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/policy.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/product.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/reservation.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/transaction.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/transfers.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/types.json create mode 100644 specification/billing/resource-manager/sdk-suppressions.yaml diff --git a/cSpell.json b/cSpell.json index 416e3c5e1d89..bcbba8da57cf 100644 --- a/cSpell.json +++ b/cSpell.json @@ -149,6 +149,14 @@ "Accesskey" ] }, + { + "filename": "**/specification/billing/**/*.json", + "words": [ + "mosp", + "resellee", + "cnpj" + ] + }, { "filename": "**/specification/compute/resource-manager/Microsoft.ContainerService/preview/2015-11-01-preview/containerService.json", "words": [ diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/agreement.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/agreement.json new file mode 100644 index 000000000000..573fcb62a0e7 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/agreement.json @@ -0,0 +1,315 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/agreements/{agreementName}": { + "get": { + "tags": [ + "Agreement" + ], + "description": "Gets an agreement by ID.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Agreements_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "in": "path", + "name": "agreementName", + "description": "The ID that uniquely identifies an agreement.", + "required": true, + "type": "string", + "pattern": "^[a-fA-F0-9]{1,12}$" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A billing account.", + "schema": { + "$ref": "#/definitions/Agreement" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AgreementByName": { + "$ref": "./examples/agreementByName.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/agreements": { + "get": { + "tags": [ + "Agreement" + ], + "description": "Lists the agreements for a billing account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Agreements_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "May be used to expand the participants.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Result of listing agreements.", + "schema": { + "$ref": "#/definitions/AgreementListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AgreementsListByBillingAccount": { + "$ref": "./examples/agreementsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Agreement": { + "description": "An agreement.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AgreementProperties" + } + }, + "x-ms-azure-resource": true + }, + "AgreementListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Agreement" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "AgreementProperties": { + "description": "An agreement.", + "type": "object", + "properties": { + "acceptanceMode": { + "description": "The mode of acceptance for an agreement.", + "enum": [ + "Other", + "ClickToAccept", + "ESignEmbedded", + "ESignOffline", + "Implicit", + "Offline", + "PhysicalSign" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AcceptanceMode", + "modelAsString": true + } + }, + "agreementLink": { + "description": "The URL to download the agreement.", + "type": "string", + "readOnly": true + }, + "billingProfileInfo": { + "description": "The list of billing profiles associated with agreement and present only for specific agreements.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingProfileInfo" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "category": { + "description": "The category of the agreement.", + "enum": [ + "Other", + "AffiliatePurchaseTerms", + "IndirectForGovernmentAgreement", + "MicrosoftCustomerAgreement", + "MicrosoftPartnerAgreement", + "UKCloudComputeFramework" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "Category", + "modelAsString": true + } + }, + "displayName": { + "description": "The name of the agreement signed by a customer.", + "type": "string", + "readOnly": true + }, + "effectiveDate": { + "format": "date-time", + "description": "The date from which the agreement is effective.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "format": "date-time", + "description": "The date when the agreement expires.", + "type": "string", + "readOnly": true + }, + "participants": { + "description": "The list of participants that participates in acceptance of an agreement.", + "type": "array", + "items": { + "$ref": "#/definitions/Participant" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "status": { + "description": "The current status of the agreement.", + "type": "string", + "readOnly": true + }, + "leadBillingAccountName": { + "description": "The ID of the lead billing account if this agreement is part of the Customer Affiliate Purchase Terms.", + "type": "string", + "readOnly": true + } + } + }, + "BillingProfileInfo": { + "description": "Details about billing profile associated with agreement and available only for specific agreements.", + "type": "object", + "properties": { + "billingAccountId": { + "description": "The fully qualified ID that uniquely identifies a billing account.", + "type": "string" + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile.", + "type": "string" + }, + "billingProfileId": { + "description": "The friendly ID that uniquely identifies a billing profile.", + "type": "string" + }, + "billingProfileSystemId": { + "description": "The fully qualified ID that uniquely identifies a billing profile.", + "type": "string" + }, + "indirectRelationshipOrganizationName": { + "description": "Billing account name. Available for a specific type of agreement.", + "type": "string" + } + } + }, + "Participant": { + "description": "Billing account name. Available for a specific type of agreement.", + "type": "object", + "properties": { + "email": { + "description": "The email address of the participant.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The acceptance status of the participant.", + "type": "string", + "readOnly": true + }, + "statusDate": { + "format": "date-time", + "description": "The date when the status got changed.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/associatedTenant.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/associatedTenant.json new file mode 100644 index 000000000000..0955a9a69583 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/associatedTenant.json @@ -0,0 +1,387 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/associatedTenants/{associatedTenantName}": { + "delete": { + "tags": [ + "AssociatedTenant" + ], + "description": "Deletes an associated tenant for a billing account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "AssociatedTenants_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/associatedTenantName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "AssociatedTenantsDelete": { + "$ref": "./examples/associatedTenantsDelete.json" + } + } + }, + "get": { + "tags": [ + "AssociatedTenant" + ], + "description": "Gets an associated tenant by ID.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "AssociatedTenants_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/associatedTenantName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "An associated tenant.", + "schema": { + "$ref": "#/definitions/AssociatedTenant" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AssociatedTenantsGet": { + "$ref": "./examples/associatedTenantsGet.json" + } + } + }, + "put": { + "tags": [ + "AssociatedTenant" + ], + "description": "Create or update an associated tenant for the billing account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "AssociatedTenants_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/associatedTenantName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "An associated tenant.", + "required": true, + "schema": { + "$ref": "#/definitions/AssociatedTenant" + } + } + ], + "responses": { + "200": { + "description": "An associated tenant.", + "schema": { + "$ref": "#/definitions/AssociatedTenant" + } + }, + "201": { + "description": "An associated tenant.", + "schema": { + "$ref": "#/definitions/AssociatedTenant" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "AssociatedTenantsCreateOrUpdate": { + "$ref": "./examples/associatedTenantsCreateOrUpdate.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/associatedTenants": { + "get": { + "tags": [ + "AssociatedTenant" + ], + "description": "Lists the associated tenants that can collaborate with the billing account on commerce activities like viewing and downloading invoices, managing payments, making purchases, and managing or provisioning licenses.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "AssociatedTenants_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "in": "query", + "name": "includeRevoked", + "description": "Can be used to get revoked associated tenants.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "A list of associated tenants.", + "schema": { + "$ref": "#/definitions/AssociatedTenantListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AssociatedTenantsListByBillingAccount": { + "$ref": "./examples/associatedTenantsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AssociatedTenant": { + "description": "An associated tenant.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AssociatedTenantProperties" + } + }, + "x-ms-azure-resource": true + }, + "AssociatedTenantListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/AssociatedTenant" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "AssociatedTenantProperties": { + "description": "An associated tenant.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "displayName": { + "description": "The name of the associated tenant.", + "type": "string" + }, + "tenantId": { + "description": "The ID that uniquely identifies a tenant.", + "type": "string" + }, + "billingManagementState": { + "description": "The state determines whether users from the associated tenant can be assigned roles for commerce activities like viewing and downloading invoices, managing payments, and making purchases.", + "enum": [ + "Other", + "NotAllowed", + "Active", + "Revoked" + ], + "type": "string", + "x-ms-enum": { + "name": "BillingManagementTenantState", + "modelAsString": true + } + }, + "provisioningManagementState": { + "description": "The state determines whether subscriptions and licenses can be provisioned in the associated tenant. It can be set to 'Pending' to initiate a billing request.", + "enum": [ + "Other", + "NotRequested", + "Active", + "Pending", + "BillingRequestExpired", + "BillingRequestDeclined", + "Revoked" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningTenantState", + "modelAsString": true + } + }, + "provisioningBillingRequestId": { + "description": "The unique identifier for the billing request that is created when enabling provisioning for an associated tenant.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/availableBalance.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/availableBalance.json new file mode 100644 index 000000000000..9e9d41b07f9d --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/availableBalance.json @@ -0,0 +1,230 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/availableBalance/default": { + "get": { + "tags": [ + "AvailableBalance" + ], + "description": "The Available Credit or Payment on Account Balance for a billing account. The credit balance can be used to settle due or past due invoices and is supported for billing accounts with agreement type Microsoft Customer Agreement. The payment on account balance is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Online Services Program.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "AvailableBalances_GetByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Available Credit or Payment on Account Balance. The credit balance can be used to settle due or past due invoices.", + "schema": { + "$ref": "#/definitions/AvailableBalance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AvailableBalanceGetByBillingAccount": { + "$ref": "./examples/availableBalanceGetByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/availableBalance/default": { + "get": { + "tags": [ + "AvailableBalance" + ], + "description": "The Available Credit or Payment on Account Balance for a billing profile. The credit balance can be used to settle due or past due invoices and is supported for billing accounts with agreement type Microsoft Customer Agreement. The payment on account balance is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "AvailableBalances_GetByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Available Credit or Payment on Account Balance. The credit balance can be used to settle due or past due invoices.", + "schema": { + "$ref": "#/definitions/AvailableBalance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AvailableBalanceGetByBillingProfile": { + "$ref": "./examples/availableBalanceGetByBillingProfile.json" + } + } + } + } + }, + "definitions": { + "AvailableBalance": { + "description": "The Available Credit or Payment on Account Balance. The credit balance can be used to settle due or past due invoices.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AvailableBalanceProperties" + } + }, + "x-ms-azure-resource": true + }, + "AvailableBalanceProperties": { + "description": "The Available Credit or Payment on Account Balance. The credit balance can be used to settle due or past due invoices.", + "type": "object", + "properties": { + "amount": { + "description": "Credit amount for immediate payment.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "paymentsOnAccount": { + "description": "The list of payments on accounts.", + "type": "array", + "items": { + "$ref": "#/definitions/PaymentOnAccount" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "totalPaymentsOnAccount": { + "description": "Total amount of payments on accounts.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + } + } + }, + "PaymentOnAccount": { + "description": "A Payment on Account.", + "type": "object", + "properties": { + "amount": { + "description": "Payment on Account amount.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "billingProfileId": { + "description": "The ID of the billing profile for the payments on account.", + "type": "string", + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile for the payments on account.", + "type": "string", + "readOnly": true + }, + "invoiceId": { + "description": "The ID of the invoice for which the payments on account was generated.", + "type": "string", + "readOnly": true + }, + "invoiceName": { + "description": "The name of the invoice for the payments on account.", + "type": "string", + "readOnly": true + }, + "date": { + "format": "date-time", + "description": "The date of the payments on account.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Payment on Account type.", + "enum": [ + "Other", + "None", + "CreditCard", + "Credits", + "CheckWire", + "EWallet", + "TaskOrder", + "DirectDebit" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PaymentMethodFamily", + "modelAsString": true + } + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingAccount.json new file mode 100644 index 000000000000..3ef42cf8a3b7 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingAccount.json @@ -0,0 +1,1324 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/addPaymentTerms": { + "post": { + "tags": [ + "BillingAccount" + ], + "description": "Adds payment terms to all the billing profiles under the billing account. Currently, payment terms can be added only on billing accounts that have Agreement Type as 'Microsoft Customer Agreement' and AccountType as 'Enterprise'. This action needs pre-authorization and only Field Sellers are authorized to add the payment terms and is not a self-serve action.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingAccounts_AddPaymentTerms", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of payment term.", + "required": true, + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/PaymentTerm" + }, + "x-ms-identifiers": [] + } + } + ], + "responses": { + "200": { + "description": "The list of billing accounts.", + "schema": { + "$ref": "#/definitions/BillingAccount" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "PaymentTermsAdd": { + "$ref": "./examples/paymentTermsAdd.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/cancelPaymentTerms": { + "post": { + "tags": [ + "BillingAccount" + ], + "description": "Cancels all the payment terms on billing account that falls after the cancellation date in the request. Currently, cancel payment terms is only served by admin actions and is not a self-serve action.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingAccounts_CancelPaymentTerms", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "Date after which any payment terms that needs to be cancelled.", + "required": true, + "schema": { + "format": "date-time", + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The list of billing accounts.", + "schema": { + "$ref": "#/definitions/BillingAccount" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "PaymentTermsCancel": { + "$ref": "./examples/paymentTermsCancel.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/confirmTransition": { + "post": { + "tags": [ + "BillingAccount" + ], + "description": "Gets the transition details for a billing account that has transitioned from agreement type Microsoft Online Services Program to agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingAccounts_ConfirmTransition", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The details for a billing account transitioned from agreement type Microsoft Online Services Program to agreement type Microsoft Customer Agreement.", + "schema": { + "$ref": "#/definitions/TransitionDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingAccountsConfirmTransition": { + "$ref": "./examples/billingAccountsConfirmTransition.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/listInvoiceSectionsWithCreateSubscriptionPermission": { + "post": { + "tags": [ + "BillingAccount" + ], + "description": "Lists the invoice sections for which the user has permission to create Azure subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingAccounts_ListInvoiceSectionsByCreateSubscriptionPermission", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/InvoiceSectionWithCreateSubPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoiceSectionsWithCreateSubscriptionPermissionList": { + "$ref": "./examples/invoiceSectionsWithCreateSubscriptionPermissionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/validatePaymentTerms": { + "post": { + "tags": [ + "BillingAccount" + ], + "description": "Validates payment terms on a billing account with agreement type 'Microsoft Customer Agreement' and account type 'Enterprise'.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingAccounts_ValidatePaymentTerms", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of payment term.", + "required": true, + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/PaymentTerm" + }, + "x-ms-identifiers": [] + } + } + ], + "responses": { + "200": { + "description": "Result of the payment terms eligibility.", + "schema": { + "$ref": "#/definitions/PaymentTermsEligibilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PaymentTermInvalid": { + "$ref": "./examples/paymentTermInvalid.json" + }, + "PaymentTermValid": { + "$ref": "./examples/paymentTermValid.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}": { + "get": { + "tags": [ + "BillingAccount" + ], + "description": "Gets a billing account by its ID.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingAccounts_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A billing account.", + "schema": { + "$ref": "#/definitions/BillingAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingAccountsGet": { + "$ref": "./examples/billingAccountsGet.json" + }, + "BillingAccountsGetWithExpand": { + "$ref": "./examples/billingAccountsGetWithExpand.json" + }, + "BillingAccountWithRegistrationNumberWithDefaultType": { + "$ref": "./examples/billingAccountWithRegistrationNumberWithDefaultType.json" + }, + "BillingAccountWithRegistrationNumberWithType": { + "$ref": "./examples/billingAccountWithRegistrationNumberWithType.json" + }, + "BillingAccountsGetEA": { + "$ref": "./examples/billingAccountsGetEA.json" + }, + "BillingAccountWithExpandForPONumber": { + "$ref": "./examples/billingAccountWithExpandForPONumber.json" + } + } + }, + "patch": { + "tags": [ + "BillingAccount" + ], + "description": "Updates the properties of a billing account. Currently, displayName and address can be updated for billing accounts with agreement type Microsoft Customer Agreement. Currently address and notification email address can be updated for billing accounts with agreement type Microsoft Online Services Agreement. Currently, purchase order number can be edited for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingAccounts_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A billing account.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingAccountPatch" + } + } + ], + "responses": { + "200": { + "description": "A billing account.", + "schema": { + "$ref": "#/definitions/BillingAccount" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingAccountsUpdate": { + "$ref": "./examples/billingAccountsUpdate.json" + }, + "BillingAccountUpdateWithPONumber": { + "$ref": "./examples/billingAccountUpdateWithPONumber.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts": { + "get": { + "tags": [ + "BillingAccount" + ], + "description": "Lists the billing accounts that a user has access to.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingAccounts_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "includeAll", + "description": "When true, results will include Billing Accounts that the user does not have a direct role assignment on if the user has one of the following AAD roles: Global Administrator, Global Reader, Billing Administrator.", + "type": "boolean", + "default": false + }, + { + "in": "query", + "name": "includeAllWithoutBillingProfiles", + "description": "When true, results will include Billing Accounts that are not fully created if the user has one of the following AAD roles: Global Administrator, Global Reader, Billing Administrator.", + "type": "boolean", + "default": false + }, + { + "in": "query", + "name": "includeDeleted", + "description": "When true, results will include any billing accounts in a deleted state.", + "type": "boolean", + "default": false + }, + { + "in": "query", + "name": "includePendingAgreement", + "description": "Includes billing accounts with agreement pending signature that the user has access to.", + "type": "boolean", + "default": false + }, + { + "in": "query", + "name": "includeResellee", + "description": "Includes the customer's billing account of Microsoft Partner Agreement that the user has access to.", + "type": "boolean", + "default": false + }, + { + "in": "query", + "name": "legalOwnerTID", + "description": "Must be combined with legalOwnerOID, results will only include Billing Accounts for whom is legally responsible for the Billing Accounts. Optional.", + "type": "string" + }, + { + "in": "query", + "name": "legalOwnerOID", + "description": "Must be combined with legalOwnerTID, results will only include Billing Accounts for whom is legally responsible for the Billing Accounts. Optional.", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "in": "query", + "name": "expand", + "description": "Expand is allowed for SoldTo and EnrollmentDetails/PONumber.", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing accounts.", + "schema": { + "$ref": "#/definitions/BillingAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingAccountsList": { + "$ref": "./examples/billingAccountsList.json" + }, + "BillingAccountForLegacyAccountDetails": { + "$ref": "./examples/billingAccountForLegacyAccountDetails.json" + }, + "BillingAccountsListWithExpandForPONumber": { + "$ref": "./examples/billingAccountsListWithExpandForPONumber.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/validateAddress": { + "post": { + "tags": [ + "BillingAccount" + ], + "description": "Validates an address. Use the operation to validate an address before using it as soldTo or a billTo address.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Address_Validate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "Address details.", + "required": true, + "schema": { + "$ref": "./types.json#/definitions/AddressDetails" + } + } + ], + "responses": { + "200": { + "description": "Result of the address validation.", + "schema": { + "$ref": "#/definitions/AddressValidationResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AddressValidateValid": { + "$ref": "./examples/addressValidateValid.json" + }, + "AddressValidateInvalid": { + "$ref": "./examples/addressValidateInvalid.json" + } + } + } + } + }, + "definitions": { + "AddressValidationResponse": { + "description": "Result of the address validation.", + "type": "object", + "properties": { + "status": { + "description": "Status of the address validation.", + "enum": [ + "Other", + "Valid", + "Invalid" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AddressValidationStatus", + "modelAsString": true + } + }, + "suggestedAddresses": { + "description": "The list of suggested addresses.", + "type": "array", + "items": { + "$ref": "./types.json#/definitions/AddressDetails" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "validationMessage": { + "description": "Validation error message.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + }, + "BillingAccount": { + "description": "A billing account.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingAccountProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingAccountListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingAccount" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "BillingAccountPatch": { + "description": "A billing account.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingAccountProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingAccountProperties": { + "description": "A billing account.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "accountStatus": { + "description": "The current status of the billing account.", + "enum": [ + "Other", + "Active", + "UnderReview", + "Disabled", + "Deleted", + "Extended", + "Pending", + "New", + "Expired", + "Terminated", + "Transferred" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AccountStatus", + "modelAsString": true + } + }, + "accountType": { + "description": "The type of customer.", + "enum": [ + "Other", + "Enterprise", + "Individual", + "Partner", + "Reseller", + "ClassicPartner", + "Internal", + "Tenant", + "Business" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AccountType", + "modelAsString": true + } + }, + "accountSubType": { + "description": "The tier of the account.", + "enum": [ + "Other", + "None", + "Individual", + "Professional", + "Enterprise" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AccountSubType", + "modelAsString": true + } + }, + "accountStatusReasonCode": { + "description": "Reason for the specified billing account status.", + "enum": [ + "Other", + "UnusualActivity", + "ManuallyTerminated", + "Expired", + "Transferred", + "TerminateProcessing" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingAccountStatusReasonCode", + "modelAsString": true + } + }, + "agreementType": { + "description": "The type of agreement.", + "enum": [ + "Other", + "MicrosoftCustomerAgreement", + "EnterpriseAgreement", + "MicrosoftOnlineServicesProgram", + "MicrosoftPartnerAgreement" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AgreementType", + "modelAsString": true + } + }, + "displayName": { + "description": "The billing account name.", + "type": "string" + }, + "enrollmentDetails": { + "description": "The properties of an enrollment.", + "allOf": [ + { + "$ref": "#/definitions/EnrollmentDetails" + } + ] + }, + "hasReadAccess": { + "description": "Indicates whether user has read access to the billing account.", + "type": "boolean" + }, + "hasNoBillingProfiles": { + "description": "Indicates whether or not the billing account has any billing profiles.", + "type": "boolean" + }, + "notificationEmailAddress": { + "description": "Notification email address for legacy account. Available for agreement type Microsoft Online Services Program.", + "type": "string" + }, + "primaryBillingTenantId": { + "description": "The tenant that was used to set up the billing account. By default, only users from this tenant can get role assignments on the billing account and all purchases are provisioned in this tenant.", + "type": "string" + }, + "soldTo": { + "description": "The address of the individual or organization that is responsible for the billing account.", + "allOf": [ + { + "$ref": "./types.json#/definitions/AddressDetails" + } + ] + }, + "registrationNumber": { + "description": "Describes the registration number of the organization linked with the billing account.", + "allOf": [ + { + "$ref": "#/definitions/RegistrationNumber" + } + ] + }, + "billingRelationshipTypes": { + "description": "Identifies the billing relationships represented by a billing account. The billing relationship may be between Microsoft, the customer, and/or a third-party.", + "type": "array", + "items": { + "description": "Identifies the billing relationships represented by a billing account or billing profile. The billing relationship may be between Microsoft, the customer, and/or a third-party.", + "enum": [ + "Other", + "Direct", + "IndirectCustomer", + "IndirectPartner", + "CSPPartner", + "CSPCustomer" + ], + "type": "string", + "x-ms-enum": { + "name": "BillingRelationshipType", + "modelAsString": true + } + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "qualifications": { + "description": "Qualifications for pricing on a billing account. Values may be Commercial, Education, Charity or Government.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "taxIds": { + "description": "A list of tax identifiers for the billing account.", + "type": "array", + "items": { + "$ref": "#/definitions/TaxIdentifier" + }, + "x-ms-identifiers": [] + } + } + }, + "EnrollmentDetails": { + "description": "The properties of an enrollment.", + "type": "object", + "properties": { + "startDate": { + "format": "date-time", + "description": "The start date of the enrollment.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "The end date of the enrollment.", + "type": "string" + }, + "currency": { + "description": "The billing currency for the enrollment.", + "type": "string", + "readOnly": true + }, + "channel": { + "description": "The channel type of the enrollment.", + "type": "string", + "readOnly": true + }, + "language": { + "description": "The language for the enrollment.", + "type": "string", + "readOnly": true + }, + "countryCode": { + "description": "The country code of the enrollment.", + "type": "string", + "readOnly": true + }, + "billingCycle": { + "description": "The billing cycle for the enrollment.", + "type": "string", + "readOnly": true + }, + "extendedTermOption": { + "description": "The billing account extension opted by the company.", + "enum": [ + "Other", + "Opted-In", + "Opted-Out" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ExtendedTermOption", + "modelAsString": true + } + }, + "supportLevel": { + "description": "The support level offer associated with an enrollment.", + "enum": [ + "Other", + "Standard", + "Pro-Direct", + "Developer" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SupportLevel", + "modelAsString": true + } + }, + "supportCoverage": { + "description": "The support coverage period for the enrollment.", + "type": "string", + "readOnly": true + }, + "cloud": { + "description": "The cloud of the enrollment.", + "type": "string", + "readOnly": true + }, + "poNumber": { + "description": "The purchase order number of the enrollment.", + "type": "string" + }, + "markupStatus": { + "description": "Markup status of enrollment, applicable only for indirect enrollments.", + "enum": [ + "Other", + "Disabled", + "Preview", + "Published", + "Locked" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MarkupStatus", + "modelAsString": true + } + }, + "indirectRelationshipInfo": { + "description": "The properties of an enrollment which are applicable only for indirect enrollments.", + "allOf": [ + { + "$ref": "./types.json#/definitions/IndirectRelationshipInfo" + } + ] + }, + "invoiceRecipient": { + "description": "The contact who receives invoices of the enrollment.", + "type": "string", + "readOnly": true + } + } + }, + "InvoiceSectionWithCreateSubPermission": { + "description": "Invoice section properties with create subscription permission.", + "type": "object", + "properties": { + "billingProfileDisplayName": { + "description": "The name of the billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "The fully qualified ID that uniquely identifies a billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileSystemId": { + "description": "The system generated unique identifier for a billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileStatus": { + "description": "The status of the billing profile.", + "enum": [ + "Other", + "Active", + "Disabled", + "Warned", + "Deleted", + "UnderReview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatus", + "modelAsString": true + } + }, + "billingProfileStatusReasonCode": { + "description": "Reason for the specified billing profile status.", + "enum": [ + "Other", + "PastDue", + "UnusualActivity", + "SpendingLimitReached", + "SpendingLimitExpired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatusReasonCode", + "modelAsString": true + } + }, + "billingProfileSpendingLimit": { + "description": "The billing profile spending limit.", + "enum": [ + "Off", + "On" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SpendingLimit", + "modelAsString": true + } + }, + "enabledAzurePlans": { + "description": "Enabled azure plans for the associated billing profile.", + "type": "array", + "items": { + "$ref": "./types.json#/definitions/AzurePlan" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "invoiceSectionDisplayName": { + "description": "The name of the invoice section.", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "The fully qualified ID that uniquely identifies an invoice section.", + "type": "string", + "readOnly": true + }, + "invoiceSectionSystemId": { + "description": "The system generated unique identifier for an invoice section.", + "type": "string", + "readOnly": true + } + } + }, + "InvoiceSectionWithCreateSubPermissionListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/InvoiceSectionWithCreateSubPermission" + }, + "readOnly": true, + "x-ms-identifiers": [ + "invoiceSectionId" + ] + } + } + }, + "PaymentTerm": { + "description": "The properties of payment term.", + "type": "object", + "properties": { + "term": { + "description": "Represents duration in netXX format. Always in days.", + "type": "string" + }, + "startDate": { + "format": "date-time", + "description": "The date on when the defined 'Payment Term' will be effective from and is always in UTC.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "The date on when the defined 'Payment Term' will end and is always in UTC.", + "type": "string" + }, + "isDefault": { + "description": "Indicates payment term is the standard payment term.", + "type": "boolean", + "readOnly": true + } + } + }, + "PaymentTermsEligibilityDetail": { + "description": "Details of the payment terms eligibility.", + "type": "object", + "properties": { + "code": { + "description": "Indicates the reason for the ineligibility of the payment terms.", + "enum": [ + "Other", + "OverlappingPaymentTerms", + "InvalidDateFormat", + "InvalidDateRange", + "InactiveBillingAccount", + "InvalidBillingAccountType", + "NullOrEmptyPaymentTerms", + "BillingAccountNotFound", + "IneligibleBillingAccountStatus", + "InvalidTerms" + ], + "type": "string", + "x-ms-enum": { + "name": "PaymentTermsEligibilityCode", + "modelAsString": true + } + }, + "message": { + "description": "Indicates the message for the ineligibility of the payment terms.", + "type": "string" + } + } + }, + "PaymentTermsEligibilityResult": { + "description": "Result of the payment terms eligibility.", + "type": "object", + "properties": { + "eligibilityStatus": { + "description": "Indicates the eligibility status of the payment terms.", + "enum": [ + "Other", + "Valid", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "PaymentTermsEligibilityStatus", + "modelAsString": true + } + }, + "eligibilityDetails": { + "description": "Details of the payment terms eligibility.", + "type": "array", + "items": { + "$ref": "#/definitions/PaymentTermsEligibilityDetail" + }, + "x-ms-identifiers": [] + } + } + }, + "RegistrationNumber": { + "description": "Describes the registration number of the organization linked with the billing account.", + "type": "object", + "properties": { + "id": { + "description": "The unique identification number of the organization linked with the billing account.", + "type": "string" + }, + "required": { + "description": "Identifies if the registration number is required for the billing account.", + "type": "boolean", + "readOnly": true + }, + "type": { + "description": "The types of registration number allowed based on the country of the billing account.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + } + }, + "TaxIdentifier": { + "description": "A tax identifier for the billing account.", + "type": "object", + "properties": { + "id": { + "description": "The id of the tax identifier.", + "type": "string" + }, + "type": { + "description": "The type of the tax identifier.", + "enum": [ + "Other", + "BrazilCcmId", + "BrazilCnpjId", + "BrazilCpfId", + "CanadianFederalExempt", + "CanadianProvinceExempt", + "ExternalTaxation", + "IndiaFederalTanId", + "IndiaFederalServiceTaxId", + "IndiaPanId", + "IndiaStateCstId", + "IndiaStateGstINId", + "IndiaStateVatId", + "IntlExempt", + "USExempt", + "VatId", + "LoveCode", + "MobileBarCode", + "NationalIdentificationNumber", + "PublicSectorId" + ], + "type": "string", + "x-ms-enum": { + "name": "TaxIdentifierType", + "modelAsString": true + } + }, + "scope": { + "description": "The scope of the tax identifier.", + "type": "string" + }, + "country": { + "description": "The country of the tax identifier.", + "type": "string" + }, + "status": { + "description": "The status of the tax identifier.", + "enum": [ + "Other", + "Valid", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "TaxIdentifierStatus", + "modelAsString": true + } + } + } + }, + "TransitionDetails": { + "description": "The details for a billing account transitioned from agreement type Microsoft Online Services Program to agreement type Microsoft Customer Agreement.", + "type": "object", + "properties": { + "transitionDate": { + "format": "date-time", + "description": "The transition completion date.", + "type": "string", + "readOnly": true + }, + "anniversaryDay": { + "format": "int32", + "description": "The anniversary day of the pre-transitioned account of type Microsoft Online Services Program.", + "type": "integer", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingPermission.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingPermission.json new file mode 100644 index 000000000000..40ef0839c93c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingPermission.json @@ -0,0 +1,830 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingPermissions": { + "get": { + "tags": [ + "BillingPermission" + ], + "description": "Lists the billing permissions the caller has on a billing account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of billingPermissions a caller has on a billing account.", + "schema": { + "$ref": "#/definitions/BillingPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPermissionsListByBillingAccount": { + "$ref": "./examples/billingPermissionsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingPermissions": { + "get": { + "tags": [ + "BillingPermission" + ], + "description": "Lists the billing permissions the caller has on a billing profile.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of billingPermissions a caller has on a billing profile.", + "schema": { + "$ref": "#/definitions/BillingPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPermissionsListByBillingProfile": { + "$ref": "./examples/billingPermissionsListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/checkAccess": { + "post": { + "tags": [ + "BillingPermission" + ], + "description": "Provides a list of check access response objects for a billing profile.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_CheckAccessByBillingProfile", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The request object against which access of the caller will be checked.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckAccessRequest" + } + } + ], + "responses": { + "200": { + "description": "The list of check access response objects for a billing profile.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CheckAccessResponse" + }, + "x-ms-identifiers": [] + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckAccessByBillingProfile": { + "$ref": "./examples/checkAccessByBillingProfile.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingPermissions": { + "get": { + "tags": [ + "BillingPermission" + ], + "description": "Lists the billing permissions the caller has for a customer.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_ListByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of billingPermissions a caller has on a customer.", + "schema": { + "$ref": "#/definitions/BillingPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPermissionsListByCustomer": { + "$ref": "./examples/billingPermissionsListByCustomer.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/checkAccess": { + "post": { + "tags": [ + "BillingPermission" + ], + "description": "Provides a list of check access response objects for a customer.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_CheckAccessByCustomer", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The request object against which access of the caller will be checked.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckAccessRequest" + } + } + ], + "responses": { + "200": { + "description": "The list of check access response objects for a customer.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CheckAccessResponse" + }, + "x-ms-identifiers": [] + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckAccessByCustomer": { + "$ref": "./examples/checkAccessByCustomer.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingPermissions": { + "get": { + "tags": [ + "BillingPermission" + ], + "description": "Lists the billing permissions the caller has for an invoice section.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_ListByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of billingPermissions a caller has on an invoice section.", + "schema": { + "$ref": "#/definitions/BillingPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPermissionsListByInvoiceSection": { + "$ref": "./examples/billingPermissionsListByInvoiceSection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/checkAccess": { + "post": { + "tags": [ + "BillingPermission" + ], + "description": "Provides a list of check access response objects for an invoice section.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_CheckAccessByInvoiceSection", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The request object against which access of the caller will be checked.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckAccessRequest" + } + } + ], + "responses": { + "200": { + "description": "The list of check access response objects for an invoice section.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CheckAccessResponse" + }, + "x-ms-identifiers": [] + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckAccessByInvoiceSection": { + "$ref": "./examples/checkAccessByInvoiceSection.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/checkAccess": { + "post": { + "tags": [ + "BillingPermission" + ], + "description": "Provides a list of check access response objects for a billing account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_CheckAccessByBillingAccount", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The request object against which access of the caller will be checked.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckAccessRequest" + } + } + ], + "responses": { + "200": { + "description": "The list of check access response objects for a billing account.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CheckAccessResponse" + }, + "x-ms-identifiers": [] + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckAccessByBillingAccount": { + "$ref": "./examples/checkAccessByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/billingPermissions": { + "get": { + "tags": [ + "BillingPermission" + ], + "description": "Lists the billing permissions the caller has for a customer at billing account level.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_ListByCustomerAtBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of billingPermissions a caller has on a customer.", + "schema": { + "$ref": "#/definitions/BillingPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPermissionsListByCustomerAtBillingAccount": { + "$ref": "./examples/billingPermissionsListByCustomerAtBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingPermissions": { + "get": { + "tags": [ + "BillingPermission" + ], + "description": "Lists the billing permissions the caller has for a department.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_ListByDepartment", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of billingPermissions a caller has on a department.", + "schema": { + "$ref": "#/definitions/BillingPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPermissionsListByDepartment": { + "$ref": "./examples/billingPermissionsListByDepartment.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/checkAccess": { + "post": { + "tags": [ + "BillingPermission" + ], + "description": "Provides a list of check access response objects for a department.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_CheckAccessByDepartment", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The request object against which access of the caller will be checked.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckAccessRequest" + } + } + ], + "responses": { + "200": { + "description": "The list of check access response objects for a department.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CheckAccessResponse" + }, + "x-ms-identifiers": [] + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckAccessByDepartment": { + "$ref": "./examples/checkAccessByDepartment.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingPermissions": { + "get": { + "tags": [ + "BillingPermission" + ], + "description": "Lists the billing permissions the caller has for an enrollment account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_ListByEnrollmentAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of billingPermissions a caller has on an enrollment account.", + "schema": { + "$ref": "#/definitions/BillingPermissionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPermissionsListByEnrollmentAccount": { + "$ref": "./examples/billingPermissionsListByEnrollmentAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/checkAccess": { + "post": { + "tags": [ + "BillingPermission" + ], + "description": "Provides a list of check access response objects for an enrollment account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingPermissions_CheckAccessByEnrollmentAccount", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The request object against which access of the caller will be checked.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckAccessRequest" + } + } + ], + "responses": { + "200": { + "description": "The list of check access response objects for an enrollment account.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CheckAccessResponse" + }, + "x-ms-identifiers": [] + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckAccessByEnrollmentAccount": { + "$ref": "./examples/checkAccessByEnrollmentAccount.json" + } + } + } + } + }, + "definitions": { + "BillingPermission": { + "description": "The set of allowed action and not allowed actions a caller has on a resource.", + "type": "object", + "properties": { + "actions": { + "description": "The set of actions that the caller is allowed to perform.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "notActions": { + "description": "The set of actions that the caller is not allowed to perform.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + }, + "readOnly": true + }, + "BillingPermissionListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingPermission" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + } + }, + "CheckAccessRequest": { + "description": "Request to check access.", + "type": "object", + "properties": { + "actions": { + "description": "List of actions passed in the request body against which the permissions will be checked.", + "type": "array", + "items": { + "type": "string" + }, + "x-ms-identifiers": [] + } + } + }, + "CheckAccessResponse": { + "description": "The properties of a check access response.", + "type": "object", + "properties": { + "accessDecision": { + "description": "Access Decision, specifies access is allowed or not.", + "enum": [ + "Other", + "Allowed", + "NotAllowed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AccessDecision", + "modelAsString": true + } + }, + "action": { + "description": "Gets or sets an action.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingProfile.json new file mode 100644 index 000000000000..6ae4572c384f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingProfile.json @@ -0,0 +1,737 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/validateDeleteEligibility": { + "post": { + "tags": [ + "BillingProfile" + ], + "description": "Validates if the billing profile can be deleted. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement and Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingProfiles_ValidateDeleteEligibility", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Eligibility to delete a billing profile result.", + "schema": { + "$ref": "#/definitions/DeleteBillingProfileEligibilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingProfilesValidateDeleteEligibilitySuccess": { + "$ref": "./examples/billingProfilesValidateDeleteEligibilitySuccess.json" + }, + "BillingProfilesValidateDeleteEligibilityFailure": { + "$ref": "./examples/billingProfilesValidateDeleteEligibilityFailure.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}": { + "delete": { + "tags": [ + "BillingProfile" + ], + "description": "Deletes a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement and Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingProfiles_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "204": { + "description": "The request has succeeded with no response body." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingProfilesDelete": { + "$ref": "./examples/billingProfilesDelete.json" + } + } + }, + "get": { + "tags": [ + "BillingProfile" + ], + "description": "Gets a billing profile by its ID. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement and Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingProfiles_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A billing profile.", + "schema": { + "$ref": "#/definitions/BillingProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingProfilesGet": { + "$ref": "./examples/billingProfilesGet.json" + } + } + }, + "put": { + "tags": [ + "BillingProfile" + ], + "description": "Creates or updates a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement, Microsoft Partner Agreement and Enterprise Agreement. If you are a MCA Individual (Pay-as-you-go) customer, then please use the Azure portal experience to create the billing profile.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingProfiles_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A billing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingProfile" + } + } + ], + "responses": { + "200": { + "description": "A billing profile.", + "schema": { + "$ref": "#/definitions/BillingProfile" + } + }, + "201": { + "description": "A billing profile.", + "schema": { + "$ref": "#/definitions/BillingProfile" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingProfilesCreateOrUpdate": { + "$ref": "./examples/billingProfilesCreateOrUpdate.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles": { + "get": { + "tags": [ + "BillingProfile" + ], + "description": "Lists the billing profiles that a user has access to. The operation is supported for billing accounts with agreement of type Microsoft Customer Agreement and Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingProfiles_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "in": "query", + "name": "includeDeleted", + "description": "Can be used to get deleted billing profiles.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing profiles.", + "schema": { + "$ref": "#/definitions/BillingProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingProfilesListByBillingAccount": { + "$ref": "./examples/billingProfilesListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BillingProfile": { + "description": "A billing profile.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingProfileProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingProfileListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingProfile" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "BillingProfileProperties": { + "description": "A billing profile.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "billingRelationshipType": { + "description": "Identifies the billing relationship represented by the billing profile. The billing relationship may be between Microsoft, the customer, and/or a third-party.", + "enum": [ + "Other", + "Direct", + "IndirectCustomer", + "IndirectPartner", + "CSPPartner", + "CSPCustomer" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingRelationshipType", + "modelAsString": true + } + }, + "billTo": { + "description": "Billing address.", + "allOf": [ + { + "$ref": "./types.json#/definitions/AddressDetails" + } + ] + }, + "currency": { + "description": "The currency in which the charges for the billing profile are billed.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The name of the billing profile.", + "type": "string" + }, + "enabledAzurePlans": { + "description": "Information about the enabled azure plans.", + "type": "array", + "items": { + "$ref": "./types.json#/definitions/AzurePlan" + }, + "x-ms-identifiers": [] + }, + "hasReadAccess": { + "description": "Indicates whether user has read access to the billing profile.", + "type": "boolean", + "readOnly": true + }, + "indirectRelationshipInfo": { + "description": "Identifies the billing profile that is linked to another billing profile in indirect purchase motion.", + "allOf": [ + { + "$ref": "./types.json#/definitions/IndirectRelationshipInfo" + } + ] + }, + "invoiceDay": { + "format": "int32", + "description": "The day of the month when the invoice for the billing profile is generated.", + "type": "integer", + "readOnly": true + }, + "invoiceEmailOptIn": { + "description": "Flag controlling whether the invoices for the billing profile are sent through email.", + "type": "boolean" + }, + "invoiceRecipients": { + "description": "The list of email addresses to receive invoices by email for the billing profile.", + "type": "array", + "items": { + "type": "string" + }, + "x-ms-identifiers": [] + }, + "poNumber": { + "description": "The default purchase order number that will appear on the invoices generated for the billing profile.", + "type": "string" + }, + "shipTo": { + "description": "The default address where the products are shipped, or the services are being used. If a ship to is not specified for a product or a subscription, then this address will be used.", + "allOf": [ + { + "$ref": "./types.json#/definitions/AddressDetails" + } + ] + }, + "soldTo": { + "description": "The address of the individual or organization that is responsible for the billing account.", + "allOf": [ + { + "$ref": "./types.json#/definitions/AddressDetails" + } + ] + }, + "spendingLimit": { + "description": "The billing profile spending limit.", + "enum": [ + "Off", + "On" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SpendingLimit", + "modelAsString": true + } + }, + "spendingLimitDetails": { + "description": "The details of billing profile spending limit.", + "type": "array", + "items": { + "$ref": "#/definitions/SpendingLimitDetails" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "status": { + "description": "The status of the billing profile.", + "enum": [ + "Other", + "Active", + "Disabled", + "Warned", + "Deleted", + "UnderReview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatus", + "modelAsString": true + } + }, + "statusReasonCode": { + "description": "Reason for the specified billing profile status.", + "enum": [ + "Other", + "PastDue", + "UnusualActivity", + "SpendingLimitReached", + "SpendingLimitExpired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatusReasonCode", + "modelAsString": true + } + }, + "systemId": { + "description": "The system generated unique identifier for a billing profile.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Dictionary of metadata associated with the resource. Maximum key/value length supported of 256 characters. Keys/value should not empty value nor null. Keys can not contain < > % & \\ ? /", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetClouds": { + "description": "Identifies the cloud environments that are associated with a billing profile. This is a system managed optional field and gets updated as the billing profile gets associated with accounts in various clouds.", + "type": "array", + "items": { + "description": "Identifies the cloud environments that are associated with an invoice section. This is a system managed optional field and gets updated as the invoice section gets associated with accounts in various clouds.", + "enum": [ + "Other", + "Internal", + "USGov", + "USNat", + "USSec" + ], + "type": "string", + "x-ms-enum": { + "name": "TargetCloud", + "modelAsString": true + } + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "currentPaymentTerm": { + "description": "The current payment term of the billing profile.", + "allOf": [ + { + "$ref": "#/definitions/PaymentTerm" + } + ] + }, + "otherPaymentTerms": { + "description": "The other payment terms of the billing profile.", + "type": "array", + "items": { + "$ref": "#/definitions/PaymentTerm" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + } + }, + "DeleteBillingProfileEligibilityDetail": { + "description": "Validation details of delete billing profile eligibility.", + "type": "object", + "properties": { + "code": { + "description": "Code of the delete invoice section eligibility response.", + "enum": [ + "None", + "ActiveCredits", + "ActiveCreditCard", + "LastBillingProfile", + "NotSupported", + "OutstandingCharges", + "PendingCharges", + "ReservedInstances", + "ActiveBillingSubscriptions" + ], + "type": "string", + "x-ms-enum": { + "name": "DeleteBillingProfileEligibilityCode", + "modelAsString": true + } + }, + "message": { + "description": "Validation message.", + "type": "string" + } + } + }, + "DeleteBillingProfileEligibilityResult": { + "description": "Eligibility to delete a billing profile result.", + "type": "object", + "properties": { + "eligibilityStatus": { + "description": "Status describing if billing profile is eligible to be deleted.", + "enum": [ + "Allowed", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "DeleteBillingProfileEligibilityStatus", + "modelAsString": true + } + }, + "eligibilityDetails": { + "description": "Validation details of delete billing profile eligibility.", + "type": "array", + "items": { + "$ref": "#/definitions/DeleteBillingProfileEligibilityDetail" + }, + "x-ms-identifiers": [] + } + } + }, + "PaymentTerm": { + "description": "The properties of payment term.", + "type": "object", + "properties": { + "term": { + "description": "Represents duration in netXX format. Always in days.", + "type": "string" + }, + "startDate": { + "format": "date-time", + "description": "The date on when the defined 'Payment Term' will be effective from and is always in UTC.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "The date on when the defined 'Payment Term' will end and is always in UTC.", + "type": "string" + }, + "isDefault": { + "description": "Indicates payment term is the standard payment term.", + "type": "boolean", + "readOnly": true + } + } + }, + "SpendingLimitDetails": { + "description": "The billing profile spending limit.", + "type": "object", + "properties": { + "amount": { + "description": "The initial amount for the billing profile.", + "type": "number" + }, + "currency": { + "description": "The currency in which the charges for the billing profile are billed.", + "type": "string" + }, + "startDate": { + "format": "date-time", + "description": "The date when this spending limit goes into effect.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "The date when this spending limit is no longer in effect.", + "type": "string" + }, + "type": { + "description": "The type of spending limit.", + "enum": [ + "Other", + "None", + "FreeAccount", + "Sandbox", + "AzureForStudents", + "AcademicSponsorship", + "AzureConsumptionCredit", + "AzurePassSponsorship", + "MpnSponsorship", + "MSDN", + "NonProfitSponsorship", + "Sponsorship", + "StartupSponsorship", + "AzureForStudentsStarter", + "VisualStudio" + ], + "type": "string", + "x-ms-enum": { + "name": "SpendingLimitType", + "modelAsString": true + } + }, + "status": { + "description": "The status of current spending limit.", + "enum": [ + "Other", + "None", + "Active", + "Expired", + "LimitReached", + "LimitRemoved" + ], + "type": "string", + "x-ms-enum": { + "name": "SpendingLimitStatus", + "modelAsString": true + } + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingProperty.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingProperty.json new file mode 100644 index 000000000000..1f9b8fda1c9b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingProperty.json @@ -0,0 +1,694 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingProperty/default": { + "get": { + "tags": [ + "BillingProperty" + ], + "description": "Gets the billing properties for a subscription", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingProperty_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/subscriptionId" + }, + { + "in": "query", + "name": "includeBillingCountry", + "description": "A flag that specifies whether or not to include billing country.", + "type": "boolean", + "default": false + }, + { + "in": "query", + "name": "includeTransitionStatus", + "description": "A flag that specifies whether or not to include transition status for billing accounts with agreement type Microsoft Customer Agreement.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A billing property.", + "schema": { + "$ref": "#/definitions/BillingProperty" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPropertyGetMCA": { + "$ref": "./examples/billingPropertyGetMCA.json" + }, + "BillingPropertyGetMOSP": { + "$ref": "./examples/billingPropertyGetMOSP.json" + }, + "BillingPropertyGetMPA": { + "$ref": "./examples/billingPropertyGetMPA.json" + } + } + }, + "patch": { + "tags": [ + "BillingProperty" + ], + "description": "Updates the billing property of a subscription. Currently, cost center can be updated for billing accounts with agreement type Microsoft Customer Agreement and subscription service usage address can be updated for billing accounts with agreement type Microsoft Online Service Program.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingProperty_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/subscriptionId" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A billing property.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingProperty" + } + } + ], + "responses": { + "200": { + "description": "A billing property.", + "schema": { + "$ref": "#/definitions/BillingProperty" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingPropertyPatchCostCenter": { + "$ref": "./examples/billingPropertyPatchCostCenter.json" + }, + "BillingPropertyPatchSubscriptionServiceUsageAddress": { + "$ref": "./examples/billingPropertyPatchSubscriptionServiceUsageAddress.json" + } + } + } + } + }, + "definitions": { + "BillingProperty": { + "description": "A billing property.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingPropertyProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingPropertyProperties": { + "description": "A billing property.", + "type": "object", + "properties": { + "billingAccountAgreementType": { + "description": "The type of agreement.", + "enum": [ + "Other", + "MicrosoftCustomerAgreement", + "EnterpriseAgreement", + "MicrosoftOnlineServicesProgram", + "MicrosoftPartnerAgreement" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AgreementType", + "modelAsString": true + } + }, + "billingAccountDisplayName": { + "description": "The name of the billing account.", + "type": "string", + "readOnly": true + }, + "billingAccountId": { + "description": "The fully qualified ID that uniquely identifies a billing account.", + "type": "string", + "readOnly": true + }, + "accountAdminNotificationEmailAddress": { + "description": "Notification email address for legacy account. Available for agreement type Microsoft Online Services Program.", + "type": "string", + "readOnly": true + }, + "billingAccountSoldToCountry": { + "description": "The country of the individual or organization that is responsible for the billing account.", + "type": "string", + "readOnly": true + }, + "billingAccountStatus": { + "description": "The current status of the billing account.", + "enum": [ + "Other", + "Active", + "UnderReview", + "Disabled", + "Deleted", + "Extended", + "Pending", + "New", + "Expired", + "Terminated", + "Transferred" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AccountStatus", + "modelAsString": true + } + }, + "billingAccountStatusReasonCode": { + "description": "Reason for the specified billing account status.", + "enum": [ + "Other", + "UnusualActivity", + "ManuallyTerminated", + "Expired", + "Transferred", + "TerminateProcessing" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingAccountStatusReasonCode", + "modelAsString": true + } + }, + "billingAccountType": { + "description": "The type of customer.", + "enum": [ + "Other", + "Enterprise", + "Individual", + "Partner", + "Reseller", + "ClassicPartner", + "Internal", + "Tenant", + "Business" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AccountType", + "modelAsString": true + } + }, + "billingAccountSubType": { + "description": "The tier of the account.", + "enum": [ + "Other", + "None", + "Individual", + "Professional", + "Enterprise" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "AccountSubType", + "modelAsString": true + } + }, + "billingCurrency": { + "description": "The billing currency for the subscription. Available for billing accounts with agreement type Enterprise Agreement", + "type": "string", + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "The fully qualified ID that uniquely identifies a billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileSpendingLimit": { + "description": "The billing profile spending limit.", + "enum": [ + "Off", + "On" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SpendingLimit", + "modelAsString": true + } + }, + "billingProfileSpendingLimitDetails": { + "description": "The details of billing profile spending limit.", + "type": "array", + "items": { + "$ref": "#/definitions/SpendingLimitDetails" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "billingProfileStatus": { + "description": "The status of the billing profile.", + "enum": [ + "Other", + "Active", + "Disabled", + "Warned", + "Deleted", + "UnderReview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatus", + "modelAsString": true + } + }, + "billingProfileStatusReasonCode": { + "description": "Reason for the specified billing profile status.", + "enum": [ + "Other", + "PastDue", + "UnusualActivity", + "SpendingLimitReached", + "SpendingLimitExpired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatusReasonCode", + "modelAsString": true + } + }, + "billingProfilePaymentMethodFamily": { + "description": "The payment method family of the primary payment method for the billing profile.", + "enum": [ + "Other", + "None", + "CreditCard", + "Credits", + "CheckWire", + "EWallet", + "TaskOrder", + "DirectDebit" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PaymentMethodFamily", + "modelAsString": true + } + }, + "billingProfilePaymentMethodType": { + "description": "The payment method type of the primary payment method for the billing profile.", + "type": "string", + "readOnly": true + }, + "billingTenantId": { + "description": "The Azure AD tenant ID of the billing account for the subscription.", + "type": "string", + "readOnly": true + }, + "costCenter": { + "description": "The cost center applied to the subscription. Available for agreement type Microsoft Customer Agreement and Microsoft Partner Agreement. This property can be updated via patch.", + "type": "string" + }, + "customerDisplayName": { + "description": "The name of the customer.", + "type": "string", + "readOnly": true + }, + "customerId": { + "description": "The fully qualified ID that uniquely identifies a customer.", + "type": "string", + "readOnly": true + }, + "customerStatus": { + "description": "Identifies the status of an customer. This is an upcoming property that will be populated in the future.", + "enum": [ + "Other", + "Active", + "Pending", + "Disabled", + "Warned", + "Deleted", + "UnderReview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CustomerStatus", + "modelAsString": true + } + }, + "invoiceSectionDisplayName": { + "description": "The name of the invoice section.", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "The fully qualified ID that uniquely identifies an invoice section.", + "type": "string", + "readOnly": true + }, + "invoiceSectionStatus": { + "description": "Identifies the status of an invoice section.", + "enum": [ + "Other", + "Active", + "Deleted", + "Disabled", + "UnderReview", + "Warned", + "Restricted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InvoiceSectionState", + "modelAsString": true + } + }, + "invoiceSectionStatusReasonCode": { + "description": "Reason for the specified invoice section status.", + "enum": [ + "Other", + "PastDue", + "UnusualActivity", + "SpendingLimitReached", + "SpendingLimitExpired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InvoiceSectionStateReasonCode", + "modelAsString": true + } + }, + "isTransitionedBillingAccount": { + "description": "Specifies if the billing account for the subscription is transitioned from a Microsoft Online Service Program to a Microsoft Customer Agreement (MCA) account. Will be present and value will be true if its a transitioned billing account.", + "type": "boolean", + "readOnly": true + }, + "skuDescription": { + "description": "The sku description.", + "type": "string", + "readOnly": true + }, + "skuId": { + "description": "The ID that uniquely identifies a sku.", + "type": "string", + "readOnly": true + }, + "subscriptionBillingStatus": { + "description": "The subscription status.", + "enum": [ + "Other", + "Unknown", + "Active", + "Disabled", + "Deleted", + "Warned", + "Expiring", + "Expired", + "AutoRenew", + "Cancelled", + "Suspended", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingSubscriptionStatus", + "modelAsString": true + } + }, + "subscriptionBillingStatusDetails": { + "description": "The reason codes for the subscription status.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingSubscriptionStatusDetails" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "subscriptionBillingType": { + "description": "The type of billing subscription.", + "enum": [ + "None", + "Benefit", + "Free", + "Paid", + "PrePaid" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SubscriptionBillingType", + "modelAsString": true + } + }, + "subscriptionServiceUsageAddress": { + "description": "The address of the individual or organization where service subscription is being used. Available for agreement type Microsoft Online Services Program. This property can be updated via patch.", + "allOf": [ + { + "$ref": "./types.json#/definitions/AddressDetails" + } + ] + }, + "subscriptionWorkloadType": { + "description": "The Azure workload type of the subscription.", + "enum": [ + "None", + "Production", + "DevTest", + "Internal" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SubscriptionWorkloadType", + "modelAsString": true + } + }, + "enrollmentDetails": { + "description": "The enrollment details for the subscription. Available for billing accounts with agreement type Enterprise Agreement.", + "allOf": [ + { + "$ref": "#/definitions/SubscriptionEnrollmentDetails" + } + ] + }, + "isAccountAdmin": { + "description": "Indicates whether user is the account admin.", + "type": "boolean", + "readOnly": true + }, + "productId": { + "description": "The ID that uniquely identifies a product.", + "type": "string", + "readOnly": true + }, + "productName": { + "description": "The ID that uniquely identifies a product.", + "type": "string", + "readOnly": true + } + } + }, + "BillingSubscriptionStatusDetails": { + "description": "The suspension details for a subscription. This field is not available for Enterprise Agreement billing accounts.", + "type": "object", + "properties": { + "effectiveDate": { + "format": "date-time", + "description": "The suspension effective date for a subscription. This field is not available for Enterprise Agreement billing accounts.", + "type": "string", + "readOnly": true + }, + "reason": { + "description": "The suspension reason for a subscription. This field is not available for Enterprise Agreement billing accounts.", + "enum": [ + "None", + "Cancelled", + "PastDue", + "SuspiciousActivity", + "Other", + "Transferred", + "PolicyViolation", + "SpendingLimitReached", + "Expired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SubscriptionStatusReason", + "modelAsString": true + } + } + } + }, + "SpendingLimitDetails": { + "description": "The billing profile spending limit.", + "type": "object", + "properties": { + "amount": { + "description": "The initial amount for the billing profile.", + "type": "number" + }, + "currency": { + "description": "The currency in which the charges for the billing profile are billed.", + "type": "string" + }, + "startDate": { + "format": "date-time", + "description": "The date when this spending limit goes into effect.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "The date when this spending limit is no longer in effect.", + "type": "string" + }, + "type": { + "description": "The type of spending limit.", + "enum": [ + "Other", + "None", + "FreeAccount", + "Sandbox", + "AzureForStudents", + "AcademicSponsorship", + "AzureConsumptionCredit", + "AzurePassSponsorship", + "MpnSponsorship", + "MSDN", + "NonProfitSponsorship", + "Sponsorship", + "StartupSponsorship", + "AzureForStudentsStarter", + "VisualStudio" + ], + "type": "string", + "x-ms-enum": { + "name": "SpendingLimitType", + "modelAsString": true + } + }, + "status": { + "description": "The status of current spending limit.", + "enum": [ + "Other", + "None", + "Active", + "Expired", + "LimitReached", + "LimitRemoved" + ], + "type": "string", + "x-ms-enum": { + "name": "SpendingLimitStatus", + "modelAsString": true + } + } + } + }, + "SubscriptionEnrollmentDetails": { + "description": "The enrollment details for the subscription. Available for billing accounts with agreement type Enterprise Agreement.", + "type": "object", + "properties": { + "departmentDisplayName": { + "description": "The name of the department", + "type": "string" + }, + "departmentId": { + "description": "The ID that uniquely identifies the department.", + "type": "string" + }, + "enrollmentAccountStatus": { + "description": "The status of the enrollment account.", + "type": "string" + }, + "enrollmentAccountDisplayName": { + "description": "The name of the enrollment account.", + "type": "string" + }, + "enrollmentAccountId": { + "description": "The ID that uniquely identifies an enrollment account.", + "type": "string" + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRequest.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRequest.json new file mode 100644 index 000000000000..cbae8bca1ac8 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRequest.json @@ -0,0 +1,751 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRequests": { + "get": { + "tags": [ + "BillingRequest" + ], + "description": "The list of billing requests submitted for the billing profile.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRequests_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing requests.", + "schema": { + "$ref": "#/definitions/BillingRequestListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRequestsListByBillingProfile": { + "$ref": "./examples/billingRequestsListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRequests": { + "get": { + "tags": [ + "BillingRequest" + ], + "description": "The list of billing requests submitted for the customer.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRequests_ListByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing requests.", + "schema": { + "$ref": "#/definitions/BillingRequestListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRequestsListByCustomer": { + "$ref": "./examples/billingRequestsListByCustomer.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRequests": { + "get": { + "tags": [ + "BillingRequest" + ], + "description": "The list of billing requests submitted for the invoice section.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRequests_ListByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing requests.", + "schema": { + "$ref": "#/definitions/BillingRequestListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRequestsListByInvoiceSection": { + "$ref": "./examples/billingRequestsListByInvoiceSection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRequests": { + "get": { + "tags": [ + "BillingRequest" + ], + "description": "The list of billing requests submitted for the billing account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRequests_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing requests.", + "schema": { + "$ref": "#/definitions/BillingRequestListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRequestsListByBillingAccount": { + "$ref": "./examples/billingRequestsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingRequests/{billingRequestName}": { + "get": { + "tags": [ + "BillingRequest" + ], + "description": "Gets a billing request by its ID.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRequests_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingRequestName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A request submitted by a user to manage billing. Users with an owner role on the scope can approve or decline these requests.", + "schema": { + "$ref": "#/definitions/BillingRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRequestsGet": { + "$ref": "./examples/billingRequestsGet.json" + } + } + }, + "put": { + "tags": [ + "BillingRequest" + ], + "description": "Create or update a billing request.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRequests_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingRequestName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A request submitted by a user to manage billing. Users with an owner role on the scope can approve or decline these requests.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingRequest" + } + } + ], + "responses": { + "200": { + "description": "A request submitted by a user to manage billing. Users with an owner role on the scope can approve or decline these requests.", + "schema": { + "$ref": "#/definitions/BillingRequest" + } + }, + "201": { + "description": "A request submitted by a user to manage billing. Users with an owner role on the scope can approve or decline these requests.", + "schema": { + "$ref": "#/definitions/BillingRequest" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingRequestsCreateOrUpdate": { + "$ref": "./examples/billingRequestsCreateOrUpdate.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingRequests": { + "get": { + "tags": [ + "BillingRequest" + ], + "description": "The list of billing requests submitted by a user.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRequests_ListByUser", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing requests.", + "schema": { + "$ref": "#/definitions/BillingRequestListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRequestsListByUser": { + "$ref": "./examples/billingRequestsListByUser.json" + }, + "BillingRequestsListByUserWithFilter": { + "$ref": "./examples/billingRequestsListByUserWithFilter.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BillingRequest": { + "description": "A request submitted by a user to manage billing. Users with an owner role on the scope can approve or decline these requests.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingRequestProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingRequestListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingRequest" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "BillingRequestProperties": { + "description": "A request submitted by a user to manage billing. Users with an owner role on the scope can approve or decline these requests.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "additionalInformation": { + "description": "Additional information for the billing request.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "reviewedBy": { + "description": "The principal of the request reviewer. Will only be set if request is approved.", + "allOf": [ + { + "$ref": "#/definitions/Principal" + } + ] + }, + "reviewalDate": { + "format": "date-time", + "description": "The date and time when the request was reviewed.", + "type": "string", + "readOnly": true + }, + "billingAccountId": { + "description": "The fully qualified ID that uniquely identifies a billing account.", + "type": "string", + "readOnly": true + }, + "billingAccountName": { + "description": "The ID that uniquely identifies a billing account.", + "type": "string", + "readOnly": true + }, + "billingAccountDisplayName": { + "description": "The name of the billing account.", + "type": "string", + "readOnly": true + }, + "billingAccountPrimaryBillingTenantId": { + "description": "The primary tenant ID of the billing account for which the billing request was submitted.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "The fully qualified ID that uniquely identifies a billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileName": { + "description": "The ID that uniquely identifies a billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile.", + "type": "string", + "readOnly": true + }, + "createdBy": { + "description": "The principal of the entity who created the request.", + "allOf": [ + { + "$ref": "#/definitions/Principal" + } + ] + }, + "creationDate": { + "format": "date-time", + "description": "The date and time when the request was created.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "format": "date-time", + "description": "The date and time when the request expires.", + "type": "string", + "readOnly": true + }, + "decisionReason": { + "description": "The reason to approve or decline the request.", + "type": "string" + }, + "invoiceSectionId": { + "description": "The fully qualified ID that uniquely identifies an invoice section.", + "type": "string", + "readOnly": true + }, + "invoiceSectionName": { + "description": "The ID that uniquely identifies an invoice section.", + "type": "string", + "readOnly": true + }, + "invoiceSectionDisplayName": { + "description": "The name of the invoice section.", + "type": "string", + "readOnly": true + }, + "customerId": { + "description": "The fully qualified ID that uniquely identifies a customer.", + "type": "string", + "readOnly": true + }, + "customerName": { + "description": "The ID that uniquely identifies a customer.", + "type": "string", + "readOnly": true + }, + "customerDisplayName": { + "description": "The name of the customer.", + "type": "string", + "readOnly": true + }, + "subscriptionId": { + "description": "The fully qualified ID that uniquely identifies a billing subscription.", + "type": "string", + "readOnly": true + }, + "subscriptionName": { + "description": "The ID that uniquely identifies a billing subscription.", + "type": "string", + "readOnly": true + }, + "subscriptionDisplayName": { + "description": "The name of the billing subscription.", + "type": "string", + "readOnly": true + }, + "justification": { + "description": "Justification for submitting request.", + "type": "string" + }, + "recipients": { + "description": "The recipients of the billing request.", + "type": "array", + "items": { + "$ref": "#/definitions/Principal" + }, + "x-ms-identifiers": [] + }, + "requestScope": { + "description": "The billing scope for which the request was submitted (ex. '/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}').", + "type": "string" + }, + "billingScope": { + "description": "The billing scope for which the request will be applied. This is a read only property derived by the service.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of billing request.", + "enum": [ + "Other", + "Pending", + "Approved", + "Declined", + "Cancelled", + "Completed", + "Expired" + ], + "type": "string", + "x-ms-enum": { + "name": "BillingRequestStatus", + "modelAsString": true + } + }, + "type": { + "description": "Type of billing request.", + "enum": [ + "Other", + "InvoiceAccess", + "ProvisioningAccess", + "RoleAssignment", + "UpdateBillingPolicy" + ], + "type": "string", + "x-ms-enum": { + "name": "BillingRequestType", + "modelAsString": true + } + }, + "lastUpdatedBy": { + "description": "The principal of the entity who last updated the request.", + "allOf": [ + { + "$ref": "#/definitions/Principal" + } + ] + }, + "lastUpdatedDate": { + "format": "date-time", + "description": "Date and time of last update.", + "type": "string", + "readOnly": true + } + } + }, + "Principal": { + "description": "A principal who has interacted with a billing entity.", + "type": "object", + "properties": { + "tenantId": { + "description": "The tenant id of the principal who has interacted with a billing entity.", + "type": "string" + }, + "objectId": { + "description": "The object id of the principal who has interacted with a billing entity.", + "type": "string" + }, + "upn": { + "description": "The user principal name of the principal who has interacted with a billing entity.", + "type": "string" + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRoleAssignment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRoleAssignment.json new file mode 100644 index 000000000000..8f0211bf1a08 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRoleAssignment.json @@ -0,0 +1,1953 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleAssignments/{billingRoleAssignmentName}": { + "delete": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Deletes a role assignment on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_DeleteByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "The request has succeeded with no response body." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentDeleteByBillingProfile": { + "$ref": "./examples/billingRoleAssignmentDeleteByBillingProfile.json" + } + } + }, + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Gets a role assignment for the caller on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_GetByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentGetByBillingProfile": { + "$ref": "./examples/billingRoleAssignmentGetByBillingProfile.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleAssignments": { + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentListByBillingProfile": { + "$ref": "./examples/billingRoleAssignmentListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/createBillingRoleAssignment": { + "post": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Adds a role assignment on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_CreateByBillingProfile", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the billing role assignment.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentProperties" + } + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "202": { + "description": "The properties of the billing role assignment.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingRoleAssignmentCreateByBillingProfile": { + "$ref": "./examples/billingRoleAssignmentCreateByBillingProfile.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleAssignments/{billingRoleAssignmentName}": { + "delete": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Deletes a role assignment on a customer. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_DeleteByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "The request has succeeded with no response body." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentDeleteByCustomer": { + "$ref": "./examples/billingRoleAssignmentDeleteByCustomer.json" + } + } + }, + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Gets a role assignment for the caller on a customer. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_GetByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentGetByCustomer": { + "$ref": "./examples/billingRoleAssignmentGetByCustomer.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleAssignments": { + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on customer. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ListByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentListByCustomer": { + "$ref": "./examples/billingRoleAssignmentListByCustomer.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/createBillingRoleAssignment": { + "post": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Adds a role assignment on a customer. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_CreateByCustomer", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the billing role assignment.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentProperties" + } + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "202": { + "description": "The properties of the billing role assignment.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingRoleAssignmentCreateByCustomer": { + "$ref": "./examples/billingRoleAssignmentCreateByCustomer.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/resolveBillingRoleAssignments": { + "post": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on a customer while fetching user info for each role assignment. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ResolveByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "in": "query", + "name": "resolveScopeDisplayNames", + "description": "Resolves the scope display name for each of the role assignments.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "202": { + "description": "The list of the billing role assignments.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ResolveBillingRoleAssignmentByCustomer": { + "$ref": "./examples/resolveBillingRoleAssignmentByCustomer.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleAssignments/{billingRoleAssignmentName}": { + "delete": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Deletes a role assignment on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_DeleteByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "The request has succeeded with no response body." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentDeleteByInvoiceSection": { + "$ref": "./examples/billingRoleAssignmentDeleteByInvoiceSection.json" + } + } + }, + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Gets a role assignment for the caller on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_GetByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentGetByInvoiceSection": { + "$ref": "./examples/billingRoleAssignmentGetByInvoiceSection.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleAssignments": { + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ListByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentListByInvoiceSection": { + "$ref": "./examples/billingRoleAssignmentListByInvoiceSection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/createBillingRoleAssignment": { + "post": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Adds a role assignment on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_CreateByInvoiceSection", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the billing role assignment.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentProperties" + } + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "202": { + "description": "The properties of the billing role assignment.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingRoleAssignmentCreateByInvoiceSection": { + "$ref": "./examples/billingRoleAssignmentCreateByInvoiceSection.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/resolveBillingRoleAssignments": { + "post": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on an invoice section while fetching user info for each role assignment. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ResolveByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "in": "query", + "name": "resolveScopeDisplayNames", + "description": "Resolves the scope display name for each of the role assignments.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "202": { + "description": "The list of the billing role assignments.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ResolveBillingRoleAssignmentByInvoiceSection": { + "$ref": "./examples/resolveBillingRoleAssignmentByInvoiceSection.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/resolveBillingRoleAssignments": { + "post": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on an billing profile while fetching user info for each role assignment. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ResolveByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "in": "query", + "name": "resolveScopeDisplayNames", + "description": "Resolves the scope display name for each of the role assignments.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "202": { + "description": "The list of the billing role assignments.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ResolveBillingRoleAssignmentByBillingProfile": { + "$ref": "./examples/resolveBillingRoleAssignmentByBillingProfile.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments/{billingRoleAssignmentName}": { + "delete": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Deletes a role assignment on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_DeleteByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "The request has succeeded with no response body." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentDeleteByBillingAccount": { + "$ref": "./examples/billingRoleAssignmentDeleteByBillingAccount.json" + } + } + }, + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Gets a role assignment for the caller on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_GetByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentGetByBillingAccount": { + "$ref": "./examples/billingRoleAssignmentGetByBillingAccount.json" + } + } + }, + "put": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Create or update a billing role assignment. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_CreateOrUpdateByBillingAccount", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the billing role assignment.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "201": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "BillingRoleAssignmentCreateOrUpdateByBillingAccount": { + "$ref": "./examples/billingRoleAssignmentCreateOrUpdateByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleAssignments": { + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentListByBillingAccount": { + "$ref": "./examples/billingRoleAssignmentListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/createBillingRoleAssignment": { + "post": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Adds a role assignment on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_CreateByBillingAccount", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the billing role assignment.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentProperties" + } + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "202": { + "description": "The properties of the billing role assignment.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingRoleAssignmentCreateByBillingAccount": { + "$ref": "./examples/billingRoleAssignmentCreateByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments/{billingRoleAssignmentName}": { + "delete": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Deletes a role assignment on a department. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_DeleteByDepartment", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "The request has succeeded with no response body." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentDeleteByDepartment": { + "$ref": "./examples/billingRoleAssignmentDeleteByDepartment.json" + } + } + }, + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Gets a role assignment for the caller on a department. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_GetByDepartment", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentGetByDepartment": { + "$ref": "./examples/billingRoleAssignmentGetByDepartment.json" + } + } + }, + "put": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Create or update a billing role assignment. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_CreateOrUpdateByDepartment", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the billing role assignment.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "201": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "BillingRoleAssignmentCreateOrUpdateByDepartment": { + "$ref": "./examples/billingRoleAssignmentCreateOrUpdateByDepartment.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleAssignments": { + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on a department. The operation is supported for billing accounts of type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ListByDepartment", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentListByDepartment": { + "$ref": "./examples/billingRoleAssignmentListByDepartment.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments/{billingRoleAssignmentName}": { + "delete": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Deletes a role assignment on a enrollment Account. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_DeleteByEnrollmentAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "The request has succeeded with no response body." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentDeleteByEnrollmentAccount": { + "$ref": "./examples/billingRoleAssignmentDeleteByEnrollmentAccount.json" + } + } + }, + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Gets a role assignment for the caller on a enrollment Account. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_GetByEnrollmentAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentGetByEnrollmentAccount": { + "$ref": "./examples/billingRoleAssignmentGetByEnrollmentAccount.json" + } + } + }, + "put": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Create or update a billing role assignment. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_CreateOrUpdateByEnrollmentAccount", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/billingRoleAssignmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the billing role assignment.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + } + ], + "responses": { + "200": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + } + }, + "201": { + "description": "The properties of the billing role assignment.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignment" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "BillingRoleAssignmentCreateOrUpdateByEnrollmentAccount": { + "$ref": "./examples/billingRoleAssignmentCreateOrUpdateByEnrollmentAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleAssignments": { + "get": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on a enrollment account. The operation is supported for billing accounts of type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ListByEnrollmentAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleAssignmentListByEnrollmentAccount": { + "$ref": "./examples/billingRoleAssignmentListByEnrollmentAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/resolveBillingRoleAssignments": { + "post": { + "tags": [ + "BillingRoleAssignment" + ], + "description": "Lists the role assignments for the caller on a billing account while fetching user info for each role assignment. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleAssignments_ResolveByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "in": "query", + "name": "resolveScopeDisplayNames", + "description": "Resolves the scope display name for each of the role assignments.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + } + ], + "responses": { + "200": { + "description": "The list of the billing role assignments.", + "schema": { + "$ref": "#/definitions/BillingRoleAssignmentListResult" + } + }, + "202": { + "description": "The list of the billing role assignments.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ResolveBillingRoleAssignmentByBillingAccount": { + "$ref": "./examples/resolveBillingRoleAssignmentByBillingAccount.json" + } + } + } + } + }, + "definitions": { + "BillingRoleAssignment": { + "description": "The properties of the billing role assignment.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingRoleAssignmentProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingRoleAssignmentListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingRoleAssignment" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "BillingRoleAssignmentProperties": { + "description": "The properties of the billing role assignment.", + "required": [ + "roleDefinitionId" + ], + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "createdOn": { + "format": "date-time", + "description": "The date the role assignment was created.", + "type": "string", + "readOnly": true + }, + "createdByPrincipalTenantId": { + "description": "The tenant Id of the user who created the role assignment.", + "type": "string", + "readOnly": true + }, + "createdByPrincipalId": { + "description": "The object ID of the user who created the role assignment.", + "type": "string", + "readOnly": true + }, + "createdByPrincipalPuid": { + "description": "The principal PUID of the user who created the role assignment.", + "type": "string", + "readOnly": true + }, + "createdByUserEmailAddress": { + "description": "The email address of the user who created the role assignment. This is supported only for billing accounts with agreement type Enterprise Agreement.", + "type": "string", + "readOnly": true + }, + "modifiedOn": { + "format": "date-time", + "description": "The date the role assignment was modified.", + "type": "string", + "readOnly": true + }, + "modifiedByPrincipalPuid": { + "description": "The principal PUID of the user who modified the role assignment.", + "type": "string", + "readOnly": true + }, + "modifiedByUserEmailAddress": { + "description": "The email address of the user who modified the role assignment. This is supported only for billing accounts with agreement type Enterprise Agreement.", + "type": "string", + "readOnly": true + }, + "modifiedByPrincipalId": { + "description": "The principal PUID of the user who modified the role assignment.", + "type": "string", + "readOnly": true + }, + "modifiedByPrincipalTenantId": { + "description": "The tenant Id of the user who modified the role assignment.", + "type": "string", + "readOnly": true + }, + "principalPuid": { + "description": "The principal PUID of the user to whom the role was assigned.", + "type": "string" + }, + "principalId": { + "description": "The object id of the user to whom the role was assigned.", + "type": "string" + }, + "principalTenantId": { + "description": "The principal tenant id of the user to whom the role was assigned.", + "type": "string" + }, + "roleDefinitionId": { + "description": "The ID of the role definition.", + "minLength": 1, + "type": "string" + }, + "scope": { + "description": "The scope at which the role was assigned.", + "type": "string" + }, + "userAuthenticationType": { + "description": "The authentication type of the user, whether Organization or MSA, of the user to whom the role was assigned. This is supported only for billing accounts with agreement type Enterprise Agreement.", + "type": "string" + }, + "userEmailAddress": { + "description": "The email address of the user to whom the role was assigned. This is supported only for billing accounts with agreement type Enterprise Agreement.", + "type": "string" + }, + "principalTenantName": { + "description": "The friendly name of the tenant of the user to whom the role was assigned. This will be 'Primary Tenant' for the primary tenant of the billing account.", + "type": "string", + "readOnly": true + }, + "principalDisplayName": { + "description": "The display name of the principal to whom the role was assigned.", + "type": "string", + "readOnly": true + }, + "principalType": { + "description": "The type of a role Assignment.", + "enum": [ + "Unknown", + "None", + "User", + "Group", + "DirectoryRole", + "ServicePrincipal", + "Everyone" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "billingRequestId": { + "description": "The ID of the billing request that was created for the role assignment. This is only applicable to cross tenant role assignments or role assignments created through the billing request.", + "type": "string", + "readOnly": true + }, + "billingAccountId": { + "description": "The fully qualified ID that uniquely identifies a billing account.", + "type": "string", + "readOnly": true + }, + "billingAccountDisplayName": { + "description": "The name of the billing account.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "The fully qualified ID that uniquely identifies a billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile.", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "The fully qualified ID that uniquely identifies an invoice section.", + "type": "string", + "readOnly": true + }, + "invoiceSectionDisplayName": { + "description": "The name of the invoice section.", + "type": "string", + "readOnly": true + }, + "customerId": { + "description": "The fully qualified ID that uniquely identifies a customer.", + "type": "string", + "readOnly": true + }, + "customerDisplayName": { + "description": "The name of the customer.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRoleDefinition.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRoleDefinition.json new file mode 100644 index 000000000000..98260d12b7a2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingRoleDefinition.json @@ -0,0 +1,710 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleDefinitions/{roleDefinitionName}": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Gets the definition for a role on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_GetByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/roleDefinitionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of a role definition.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionGetByBillingProfile": { + "$ref": "./examples/billingRoleDefinitionGetByBillingProfile.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingRoleDefinitions": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Lists the role definitions for a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of role definitions.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionListByBillingProfile": { + "$ref": "./examples/billingRoleDefinitionListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleDefinitions/{roleDefinitionName}": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Gets the definition for a role on a customer. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_GetByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/roleDefinitionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of a role definition.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionGetByCustomer": { + "$ref": "./examples/billingRoleDefinitionGetByCustomer.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingRoleDefinitions": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Lists the role definitions for a customer. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_ListByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of role definitions.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionListByCustomer": { + "$ref": "./examples/billingRoleDefinitionListByCustomer.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleDefinitions/{roleDefinitionName}": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Gets the definition for a role on an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_GetByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/roleDefinitionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of a role definition.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionGetByInvoiceSection": { + "$ref": "./examples/billingRoleDefinitionGetByInvoiceSection.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingRoleDefinitions": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Lists the role definitions for an invoice section. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_ListByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of role definitions.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionListByInvoiceSection": { + "$ref": "./examples/billingRoleDefinitionListByInvoiceSection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleDefinitions/{roleDefinitionName}": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Gets the definition for a role on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_GetByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/roleDefinitionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of a role definition.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionGetByBillingAccount": { + "$ref": "./examples/billingRoleDefinitionGetByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingRoleDefinitions": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Lists the role definitions for a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of role definitions.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionListByBillingAccount": { + "$ref": "./examples/billingRoleDefinitionListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleDefinitions/{roleDefinitionName}": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Gets the definition for a role on a department. The operation is supported for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_GetByDepartment", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/roleDefinitionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of a role definition.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionGetByDepartment": { + "$ref": "./examples/billingRoleDefinitionGetByDepartment.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/billingRoleDefinitions": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "List the definition for a department. The operation is supported for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_ListByDepartment", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of a role definition.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionListByDepartment": { + "$ref": "./examples/billingRoleDefinitionListByDepartment.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleDefinitions/{roleDefinitionName}": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "Gets the definition for a role on an enrollment account. The operation is supported for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_GetByEnrollmentAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/roleDefinitionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The properties of a role definition.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionGetByEnrollmentAccount": { + "$ref": "./examples/billingRoleDefinitionGetByEnrollmentAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingRoleDefinitions": { + "get": { + "tags": [ + "BillingRoleDefinition" + ], + "description": "List the definition for an enrollment account. The operation is supported for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingRoleDefinition_ListByEnrollmentAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of role definitions.", + "schema": { + "$ref": "#/definitions/BillingRoleDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingRoleDefinitionListByEnrollmentAccount": { + "$ref": "./examples/billingRoleDefinitionListByEnrollmentAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BillingPermission": { + "description": "The set of allowed action and not allowed actions a caller has on a resource.", + "type": "object", + "properties": { + "actions": { + "description": "The set of actions that the caller is allowed to perform.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "notActions": { + "description": "The set of actions that the caller is not allowed to perform.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + }, + "readOnly": true + }, + "BillingRoleDefinition": { + "description": "The properties of a role definition.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingRoleDefinitionProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingRoleDefinitionListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingRoleDefinition" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "BillingRoleDefinitionProperties": { + "description": "The properties of a role definition.", + "required": [ + "roleName" + ], + "type": "object", + "properties": { + "description": { + "description": "The role description.", + "type": "string", + "readOnly": true + }, + "permissions": { + "description": "The billingPermissions the role has.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingPermission" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "roleName": { + "description": "The name of the role.", + "minLength": 1, + "type": "string" + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingSavingsPlan.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingSavingsPlan.json new file mode 100644 index 000000000000..caa2a952f25f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingSavingsPlan.json @@ -0,0 +1,1272 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-04-01", + "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/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}": { + "get": { + "description": "Get a savings plan order by billing account.", + "operationId": "SavingsPlanOrders_GetByBillingAccount", + "tags": [ + "Savings plan order" + ], + "x-ms-examples": { + "SavingsPlanOrderGet": { + "$ref": "./examples/savingsPlanOrderGetByBillingAccount.json" + }, + "SavingsPlanOrderWithExpandedPaymentsGet": { + "$ref": "./examples/savingsPlanOrderExpandedScheduleGetByBillingAccount.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/SavingsPlanOrderIdParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/ExpandParameter" + } + ], + "responses": { + "200": { + "description": "The request is completed.", + "schema": { + "$ref": "#/definitions/SavingsPlanOrderModel" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders": { + "get": { + "description": "List all Savings plan orders by billing account.", + "operationId": "SavingsPlanOrders_ListByBillingAccount", + "tags": [ + "Savings plan order" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SavingsPlanOrderList": { + "$ref": "./examples/savingsPlanOrderListByBillingAccount.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "The request is completed.", + "schema": { + "$ref": "#/definitions/SavingsPlanOrderModelList" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans": { + "get": { + "description": "List savings plans in an order by billing account.", + "operationId": "SavingsPlans_ListBySavingsPlanOrder", + "tags": [ + "Savings plan" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SavingsPlansInOrderList": { + "$ref": "./examples/savingsPlansListBySavingsPlanOrders.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/SavingsPlanOrderIdParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request is completed.", + "schema": { + "$ref": "#/definitions/SavingsPlanModelList" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlans": { + "get": { + "description": "List savings plans by billing account.", + "operationId": "SavingsPlans_ListByBillingAccount", + "tags": [ + "Savings plan" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "SavingsPlansList": { + "$ref": "./examples/savingsPlansListByBillingAccount.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/TakeParameter" + }, + { + "$ref": "#/parameters/SelectedStateParameter" + }, + { + "$ref": "#/parameters/RefreshSummaryParameter" + } + ], + "responses": { + "200": { + "description": "The request is completed.", + "schema": { + "$ref": "#/definitions/SavingsPlanModelListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}": { + "get": { + "description": "Get savings plan by billing account.", + "operationId": "SavingsPlans_GetByBillingAccount", + "tags": [ + "Savings plan" + ], + "x-ms-examples": { + "SavingsPlanGet": { + "$ref": "./examples/savingsPlanGetByBillingAccount.json" + }, + "SavingsPlanGetExpandRenewProperties": { + "$ref": "./examples/savingsPlanGetExpandRenewPropertiesByBillingAccount.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/SavingsPlanOrderIdParameter" + }, + { + "$ref": "#/parameters/SavingsPlanIdParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/ExpandParameter" + } + ], + "responses": { + "200": { + "description": "The request is completed.", + "schema": { + "$ref": "#/definitions/SavingsPlanModel" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "description": "Update savings plan by billing account.", + "operationId": "SavingsPlans_UpdateByBillingAccount", + "tags": [ + "Savings plan" + ], + "x-ms-examples": { + "SavingsPlanUpdate": { + "$ref": "./examples/savingsPlanUpdateByBillingAccount.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/SavingsPlanOrderIdParameter" + }, + { + "$ref": "#/parameters/SavingsPlanIdParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/SavingsPlanUpdateRequestParameter" + } + ], + "responses": { + "200": { + "description": "The request is completed.", + "schema": { + "$ref": "#/definitions/SavingsPlanModel" + } + }, + "202": { + "description": "The request is accepted.", + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "URL for checking the ongoing status of the operation." + }, + "Location": { + "type": "string", + "description": "URL for determining when an operation has completed. Only use this value only when Azure-AsyncOperation isn't returned." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "Clients should wait for the Retry-After interval before polling again" + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}/validate": { + "post": { + "description": "Validate savings plan patch by billing account.", + "operationId": "SavingsPlans_ValidateUpdateByBillingAccount", + "tags": [ + "Savings plan" + ], + "x-ms-examples": { + "SavingsPlanValidateUpdate": { + "$ref": "./examples/savingsPlanValidateUpdateByBillingAccount.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/SavingsPlanOrderIdParameter" + }, + { + "$ref": "#/parameters/SavingsPlanIdParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/SavingsPlanUpdateValidateRequestParameter" + } + ], + "responses": { + "200": { + "description": "The request is completed.", + "schema": { + "$ref": "#/definitions/SavingsPlanValidateResponse" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Sku": { + "type": "object", + "description": "The SKU to be applied for this resource", + "properties": { + "name": { + "type": "string", + "description": "Name of the SKU to be applied" + } + } + }, + "BillingScopeId": { + "type": "string", + "description": "Subscription that will be charged for purchasing SavingsPlan" + }, + "BillingProfileId": { + "type": "string", + "readOnly": true, + "description": "Fully-qualified identifier of the billing profile where the savings plan is applied. Present only for Field-led or Customer-led customers." + }, + "CustomerId": { + "type": "string", + "readOnly": true, + "description": "Fully-qualified identifier of the customer where the savings plan is applied. Present only for Partner-led customers." + }, + "BillingAccountId": { + "type": "string", + "readOnly": true, + "description": "Fully-qualified identifier of the billing account where the savings plan is applied." + }, + "ProvisioningState": { + "type": "string", + "description": "Provisioning state", + "readOnly": true, + "enum": [ + "PendingBilling", + "ConfirmedBilling", + "Creating", + "Failed", + "Created", + "Succeeded", + "Canceled", + "Expired" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "BillingPlan": { + "type": "string", + "description": "Represents the billing plan in ISO 8601 format. Required only for monthly purchases.", + "enum": [ + "P1M" + ], + "x-ms-enum": { + "name": "BillingPlan", + "modelAsString": true + } + }, + "Renew": { + "type": "boolean", + "default": false, + "description": "Setting this to true will automatically purchase a new benefit on the expiration date time." + }, + "BenefitTerm": { + "type": "string", + "description": "Represents the Savings plan term in ISO 8601 format.", + "enum": [ + "P1Y", + "P3Y", + "P5Y" + ], + "x-ms-enum": { + "name": "SavingsPlanTerm", + "modelAsString": true + } + }, + "DisplayName": { + "type": "string", + "description": "Display name" + }, + "AppliedScopeType": { + "type": "string", + "description": "Type of the Applied Scope.", + "enum": [ + "Single", + "Shared", + "ManagementGroup" + ], + "x-ms-enum": { + "name": "AppliedScopeType", + "modelAsString": true + } + }, + "AppliedScopeProperties": { + "type": "object", + "description": "Properties specific to applied scope type. Not required if not applicable.", + "properties": { + "tenantId": { + "$ref": "#/definitions/TenantId" + }, + "managementGroupId": { + "$ref": "#/definitions/ManagementGroupId" + }, + "subscriptionId": { + "$ref": "#/definitions/SubscriptionId" + }, + "resourceGroupId": { + "$ref": "#/definitions/ResourceGroupId" + }, + "displayName": { + "type": "string", + "description": "Display name" + } + } + }, + "TenantId": { + "type": "string", + "description": "Tenant ID where the savings plan where the benefit is applied." + }, + "ManagementGroupId": { + "type": "string", + "description": "Fully-qualified identifier of the management group where the benefit is applied." + }, + "SubscriptionId": { + "type": "string", + "description": "Fully-qualified identifier of the subscription where the benefit is applied." + }, + "ResourceGroupId": { + "type": "string", + "description": "Fully-qualified identifier of the resource group where the benefit is applied." + }, + "Commitment": { + "type": "object", + "description": "Commitment towards the benefit.", + "allOf": [ + { + "$ref": "#/definitions/Price" + } + ], + "properties": { + "grain": { + "type": "string", + "description": "Commitment grain.", + "enum": [ + "Hourly" + ], + "x-ms-enum": { + "name": "CommitmentGrain", + "modelAsString": true + } + } + } + }, + "SavingsPlanId": { + "type": "string", + "description": "Identifier of the savings plan", + "readOnly": true + }, + "ExpiryDate": { + "type": "string", + "description": "Date when the Order is expected to expire", + "readOnly": true, + "format": "date" + }, + "SavingsPlanModelList": { + "type": "object", + "description": "List of savings plans", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SavingsPlanModel" + } + }, + "nextLink": { + "type": "string", + "description": "Url to get the next page." + } + } + }, + "SavingsPlanModelListResult": { + "type": "object", + "description": "List of savings plans", + "allOf": [ + { + "$ref": "#/definitions/SavingsPlanModelList" + } + ], + "properties": { + "summary": { + "description": "The roll out count summary of the savings plans", + "$ref": "#/definitions/SavingsPlanSummaryCount" + } + } + }, + "SavingsPlanModel": { + "type": "object", + "description": "Savings plan", + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "sku": { + "description": "Savings plan SKU", + "$ref": "#/definitions/Sku" + }, + "tags": { + "description": "Dictionary of metadata associated with the resource. Maximum key/value length supported of 256 characters. Keys/value should not empty value nor null. Keys can not contain < > % & \\ ? /", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "description": "Savings plan properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SavingsPlanModelProperties" + } + } + }, + "SavingsPlanModelProperties": { + "type": "object", + "description": "Savings plan properties", + "properties": { + "displayName": { + "$ref": "#/definitions/DisplayName" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "displayProvisioningState": { + "description": "The provisioning state of the savings plan for display, e.g. Succeeded", + "type": "string", + "readOnly": true + }, + "userFriendlyAppliedScopeType": { + "description": "The applied scope type of the savings plan for display, e.g. Shared", + "type": "string", + "readOnly": true + }, + "billingScopeId": { + "$ref": "#/definitions/BillingScopeId" + }, + "billingProfileId": { + "$ref": "#/definitions/BillingProfileId" + }, + "customerId": { + "$ref": "#/definitions/CustomerId" + }, + "billingAccountId": { + "$ref": "#/definitions/BillingAccountId" + }, + "term": { + "$ref": "#/definitions/BenefitTerm" + }, + "renew": { + "$ref": "#/definitions/Renew" + }, + "renewSource": { + "$ref": "#/definitions/RenewSource" + }, + "renewDestination": { + "$ref": "#/definitions/RenewDestination" + }, + "renewProperties": { + "$ref": "#/definitions/RenewProperties" + }, + "billingPlan": { + "$ref": "#/definitions/BillingPlan" + }, + "expiryDate": { + "$ref": "#/definitions/ExpiryDate" + }, + "appliedScopeType": { + "$ref": "#/definitions/AppliedScopeType" + }, + "appliedScopeProperties": { + "$ref": "#/definitions/AppliedScopeProperties" + }, + "commitment": { + "$ref": "#/definitions/Commitment" + }, + "effectiveDateTime": { + "type": "string", + "format": "date-time", + "description": "DateTime of the savings plan starting when this version is effective from.", + "readOnly": true + }, + "benefitStartTime": { + "type": "string", + "format": "date-time", + "description": "This is the DateTime when the savings plan benefit starts.", + "readOnly": true + }, + "expiryDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the savings plan will expire.", + "readOnly": true + }, + "purchaseDateTime": { + "type": "string", + "format": "date-time", + "description": "Date time when the savings plan was purchased.", + "readOnly": true + }, + "utilization": { + "$ref": "#/definitions/Utilization" + }, + "extendedStatusInfo": { + "$ref": "#/definitions/ExtendedStatusInfo" + }, + "productCode": { + "$ref": "#/definitions/ProductCode" + } + } + }, + "SavingsPlanSummaryCount": { + "description": "The roll up count summary of savings plans in each state", + "type": "object", + "properties": { + "succeededCount": { + "description": "The number of savings plans in Succeeded state", + "readOnly": true, + "type": "number" + }, + "failedCount": { + "description": "The number of savings plans in Failed state", + "readOnly": true, + "type": "number" + }, + "expiringCount": { + "description": "The number of savings plans in Expiring state", + "readOnly": true, + "type": "number" + }, + "expiredCount": { + "description": "The number of savings plans in Expired state", + "readOnly": true, + "type": "number" + }, + "pendingCount": { + "description": "The number of savings plans in Pending state", + "readOnly": true, + "type": "number" + }, + "cancelledCount": { + "description": "The number of savings plans in Cancelled state", + "readOnly": true, + "type": "number" + }, + "processingCount": { + "description": "The number of savings plans in Processing state", + "readOnly": true, + "type": "number" + }, + "noBenefitCount": { + "description": "The number of savings plans in No Benefit state", + "readOnly": true, + "type": "number" + }, + "warningCount": { + "description": "The number of savings plans in Warning state", + "readOnly": true, + "type": "number" + } + } + }, + "SavingsPlanOrderModelList": { + "type": "object", + "description": "List of savings plan orders", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SavingsPlanOrderModel" + } + }, + "nextLink": { + "type": "string", + "description": "Url to get the next page." + } + } + }, + "SavingsPlanOrderModel": { + "type": "object", + "description": "Savings plan order", + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "sku": { + "description": "Savings plan SKU", + "$ref": "#/definitions/Sku" + }, + "tags": { + "description": "Dictionary of metadata associated with the resource. Maximum key/value length supported of 256 characters. Keys/value should not empty value nor null. Keys can not contain < > % & \\ ? /", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "description": "Savings plan order properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SavingsPlanOrderModelProperties" + } + } + }, + "SavingsPlanOrderModelProperties": { + "type": "object", + "description": "Savings plan order properties", + "properties": { + "displayName": { + "$ref": "#/definitions/DisplayName" + }, + "provisioningState": { + "description": "The provisioning state of the savings plan, e.g. Succeeded", + "readOnly": true, + "type": "string" + }, + "billingScopeId": { + "$ref": "#/definitions/BillingScopeId" + }, + "billingProfileId": { + "$ref": "#/definitions/BillingProfileId" + }, + "customerId": { + "$ref": "#/definitions/CustomerId" + }, + "billingAccountId": { + "$ref": "#/definitions/BillingAccountId" + }, + "term": { + "$ref": "#/definitions/BenefitTerm" + }, + "billingPlan": { + "$ref": "#/definitions/BillingPlan" + }, + "benefitStartTime": { + "type": "string", + "format": "date-time", + "description": "DateTime when the savings plan benefit started.", + "readOnly": true + }, + "expiryDateTime": { + "type": "string", + "format": "date-time", + "description": "DateTime when the savings plan will expire.", + "readOnly": true + }, + "expiryDate": { + "$ref": "#/definitions/ExpiryDate" + }, + "planInformation": { + "$ref": "#/definitions/BillingPlanInformation" + }, + "savingsPlans": { + "type": "array", + "items": { + "$ref": "#/definitions/SavingsPlanId" + } + }, + "extendedStatusInfo": { + "$ref": "#/definitions/ExtendedStatusInfo" + }, + "productCode": { + "$ref": "#/definitions/ProductCode" + } + } + }, + "SavingsPlanUpdateRequest": { + "type": "object", + "description": "Savings plan patch request", + "properties": { + "properties": { + "$ref": "#/definitions/SavingsPlanUpdateRequestProperties" + }, + "sku": { + "$ref": "#/definitions/Sku" + }, + "tags": { + "description": "Tags for this reservation", + "$ref": "#/definitions/Tags" + } + } + }, + "SavingsPlanUpdateRequestProperties": { + "type": "object", + "description": "Savings plan patch request", + "properties": { + "displayName": { + "$ref": "#/definitions/DisplayName" + }, + "appliedScopeType": { + "$ref": "#/definitions/AppliedScopeType" + }, + "appliedScopeProperties": { + "$ref": "#/definitions/AppliedScopeProperties" + }, + "renew": { + "$ref": "#/definitions/Renew" + }, + "renewProperties": { + "$ref": "#/definitions/RenewProperties" + } + } + }, + "RenewSource": { + "type": "string", + "description": "SavingsPlan Id of the SavingsPlan from which this SavingsPlan is renewed." + }, + "RenewDestination": { + "type": "string", + "description": "SavingsPlan Id of the SavingsPlan which is purchased because of renew." + }, + "RenewProperties": { + "type": "object", + "description": "Properties specific to renew.", + "properties": { + "purchaseProperties": { + "$ref": "#/definitions/PurchaseRequest" + } + } + }, + "PurchaseRequest": { + "type": "object", + "description": "Purchase request.", + "properties": { + "sku": { + "$ref": "#/definitions/Sku" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PurchaseRequestProperties" + } + } + }, + "PurchaseRequestProperties": { + "type": "object", + "description": "Purchase request properties.", + "properties": { + "displayName": { + "type": "string", + "description": "Friendly name of the savings plan" + }, + "billingScopeId": { + "$ref": "#/definitions/BillingScopeId" + }, + "term": { + "$ref": "#/definitions/BenefitTerm" + }, + "billingPlan": { + "$ref": "#/definitions/BillingPlan" + }, + "appliedScopeType": { + "$ref": "#/definitions/AppliedScopeType" + }, + "commitment": { + "$ref": "#/definitions/Commitment" + }, + "renew": { + "$ref": "#/definitions/Renew" + }, + "appliedScopeProperties": { + "$ref": "#/definitions/AppliedScopeProperties" + } + } + }, + "Price": { + "type": "object", + "description": "The price.", + "properties": { + "currencyCode": { + "type": "string", + "description": "The ISO 4217 3-letter currency code for the currency used by this purchase record." + }, + "amount": { + "type": "number", + "format": "double" + } + } + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource Tags" + }, + "ProductCode": { + "type": "string", + "description": "Represents UPN" + }, + "BillingPlanInformation": { + "type": "object", + "description": "Information describing the type of billing plan for this savings plan.", + "properties": { + "pricingCurrencyTotal": { + "$ref": "#/definitions/Price", + "description": "Amount of money to be paid for the Order. Tax is not included." + }, + "startDate": { + "type": "string", + "format": "date", + "description": "Date when the billing plan has started." + }, + "nextPaymentDueDate": { + "type": "string", + "format": "date", + "description": "For recurring billing plans, indicates the date when next payment will be processed. Null when total is paid off." + }, + "transactions": { + "type": "array", + "items": { + "$ref": "#/definitions/PaymentDetail" + }, + "x-ms-identifiers": [] + } + } + }, + "PaymentDetail": { + "type": "object", + "description": "Information about payment related to a savings plan order.", + "properties": { + "dueDate": { + "type": "string", + "format": "date", + "description": "Date when the payment needs to be done." + }, + "paymentDate": { + "type": "string", + "format": "date", + "description": "Date when the transaction is completed. Null when it is scheduled." + }, + "pricingCurrencyTotal": { + "$ref": "#/definitions/Price", + "description": "Amount in pricing currency. Tax not included." + }, + "billingCurrencyTotal": { + "$ref": "#/definitions/Price", + "description": "Amount charged in Billing currency. Tax not included. Is null for future payments" + }, + "status": { + "$ref": "#/definitions/PaymentStatus" + }, + "extendedStatusInfo": { + "$ref": "#/definitions/ExtendedStatusInfo" + } + } + }, + "PaymentStatus": { + "type": "string", + "description": "Describes whether the payment is completed, failed, pending, cancelled or scheduled in the future.", + "enum": [ + "Succeeded", + "Failed", + "Scheduled", + "Cancelled", + "Completed", + "Pending" + ], + "x-ms-enum": { + "name": "PaymentStatus", + "modelAsString": true + } + }, + "Utilization": { + "readOnly": true, + "type": "object", + "description": "Savings plan utilization", + "properties": { + "trend": { + "description": "The trend for a savings plan's utilization", + "readOnly": true, + "type": "string" + }, + "aggregates": { + "description": "The array of aggregates of a savings plan's utilization", + "type": "array", + "items": { + "$ref": "#/definitions/UtilizationAggregates" + }, + "x-ms-identifiers": [] + } + } + }, + "UtilizationAggregates": { + "description": "The aggregate values of savings plan utilization", + "type": "object", + "properties": { + "grain": { + "description": "The grain of the aggregate", + "readOnly": true, + "type": "number" + }, + "grainUnit": { + "description": "The grain unit of the aggregate", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "The aggregate value", + "readOnly": true, + "type": "number" + }, + "valueUnit": { + "description": "The aggregate value unit", + "readOnly": true, + "type": "string" + } + } + }, + "ExtendedStatusInfo": { + "type": "object", + "readOnly": true, + "description": "Extended status information", + "properties": { + "statusCode": { + "type": "string", + "description": "Status code providing additional information." + }, + "message": { + "type": "string", + "description": "The message giving detailed information about the status code." + }, + "properties": { + "type": "object", + "description": "Properties specific to credit line check failure", + "x-ms-client-flatten": true, + "properties": { + "subscriptionId": { + "type": "string", + "description": "The subscription that has failed credit line check." + } + } + } + } + }, + "SavingsPlanUpdateValidateRequest": { + "type": "object", + "description": "Savings plan update validate request.", + "properties": { + "benefits": { + "type": "array", + "description": "The benefits of a savings plan.", + "items": { + "$ref": "#/definitions/SavingsPlanUpdateRequestProperties" + }, + "x-ms-identifiers": [] + } + } + }, + "SavingsPlanValidateResponse": { + "type": "object", + "description": "Savings plan update validate response.", + "properties": { + "benefits": { + "type": "array", + "items": { + "$ref": "#/definitions/SavingsPlanValidResponseProperty" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "description": "Url to get the next page." + } + } + }, + "SavingsPlanValidResponseProperty": { + "type": "object", + "description": "Benefit scope response property", + "properties": { + "valid": { + "type": "boolean", + "description": "Indicates if the provided input is valid" + }, + "reasonCode": { + "type": "string", + "description": "Failure reason code if the provided input is invalid" + }, + "reason": { + "type": "string", + "description": "Failure reason if the provided input is invalid" + } + } + } + }, + "parameters": { + "ExpandParameter": { + "name": "expand", + "description": "May be used to expand the planInformation.", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "string" + }, + "SkipTokenParameter": { + "name": "skiptoken", + "description": "The number of savings plans to skip from the list before returning results", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "number" + }, + "TakeParameter": { + "name": "take", + "description": "The number of savings plans to return", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "number" + }, + "SelectedStateParameter": { + "name": "selectedState", + "description": "The selected provisioning state", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "string" + }, + "RefreshSummaryParameter": { + "name": "refreshSummary", + "description": "To indicate whether to refresh the roll up counts of the savings plans group by provisioning states", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "string" + }, + "SavingsPlanOrderIdParameter": { + "name": "savingsPlanOrderId", + "description": "Order ID of the savings plan", + "in": "path", + "x-ms-parameter-location": "method", + "required": true, + "type": "string" + }, + "SavingsPlanIdParameter": { + "name": "savingsPlanId", + "description": "ID of the savings plan", + "in": "path", + "x-ms-parameter-location": "method", + "required": true, + "type": "string" + }, + "SavingsPlanUpdateRequestParameter": { + "name": "body", + "description": "Request body for patching a savings plan order alias", + "in": "body", + "x-ms-parameter-location": "method", + "required": true, + "schema": { + "$ref": "#/definitions/SavingsPlanUpdateRequest" + } + }, + "SavingsPlanUpdateValidateRequestParameter": { + "name": "body", + "description": "Request body for patching a savings plan order alias", + "in": "body", + "x-ms-parameter-location": "method", + "required": true, + "schema": { + "$ref": "#/definitions/SavingsPlanUpdateValidateRequest" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingSubscription.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingSubscription.json new file mode 100644 index 000000000000..976b7926e0e9 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/billingSubscription.json @@ -0,0 +1,2082 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingSubscriptions/{billingSubscriptionName}": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Gets a subscription by its billing profile and ID. The operation is supported for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_GetByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Can be used to expand `Reseller`, `ConsumptionCostCenter`, `LastMonthCharges` and `MonthToDateCharges`", + "type": "string" + } + ], + "responses": { + "200": { + "description": "A billing subscription.", + "schema": { + "$ref": "#/definitions/BillingSubscription" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionGetByBillingProfile": { + "$ref": "./examples/billingSubscriptionGetByBillingProfile.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingSubscriptions": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Lists the subscriptions that are billed to a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "in": "query", + "name": "includeDeleted", + "description": "Can be used to get deleted billing subscriptions.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Can be used to expand `Reseller`, `ConsumptionCostCenter`, `LastMonthCharges` and `MonthToDateCharges`", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing subscriptions.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionsListByBillingProfileMCA": { + "$ref": "./examples/billingSubscriptionsListByBillingProfileMCA.json" + }, + "BillingSubscriptionsListByBillingProfileEA": { + "$ref": "./examples/billingSubscriptionsListByBillingProfileEA.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/billingSubscriptions": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Lists the subscriptions for a customer. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_ListByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "$ref": "#/parameters/customerNameParameter" + }, + { + "in": "query", + "name": "includeDeleted", + "description": "Can be used to get deleted billing subscriptions.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Can be used to expand `Reseller`, `ConsumptionCostCenter`, `LastMonthCharges` and `MonthToDateCharges`", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing subscriptions.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionsListByCustomer": { + "$ref": "./examples/billingSubscriptionsListByCustomer.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingSubscriptions": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Lists the subscriptions that are billed to an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_ListByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "$ref": "#/parameters/invoiceSectionNameParameter" + }, + { + "in": "query", + "name": "includeDeleted", + "description": "Can be used to get deleted billing subscriptions.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Can be used to expand `Reseller`, `ConsumptionCostCenter`, `LastMonthCharges` and `MonthToDateCharges`", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing subscriptions.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionsListByInvoiceSection": { + "$ref": "./examples/billingSubscriptionsListByInvoiceSection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptionAliases/{aliasName}": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Gets a subscription by its alias ID. The operation is supported for seat based billing subscriptions.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptionsAliases_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionAliasNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A billing subscription alias.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionAlias" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionAliasGet": { + "$ref": "./examples/billingSubscriptionAliasGet.json" + } + } + }, + "put": { + "tags": [ + "BillingSubscription" + ], + "description": "Creates or updates a billing subscription by its alias ID. The operation is supported for seat based billing subscriptions.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptionsAliases_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionAliasNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A billing subscription alias.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingSubscriptionAlias" + } + } + ], + "responses": { + "200": { + "description": "The billing subscription alias.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionAlias" + } + }, + "201": { + "description": "The billing subscription alias.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionAlias" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingSubscriptionAliasCreateOrUpdate": { + "$ref": "./examples/billingSubscriptionAliasCreateOrUpdate.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptionAliases": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Lists the subscription aliases for a billing account. The operation is supported for seat based billing subscriptions.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptionsAliases_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "in": "query", + "name": "includeDeleted", + "description": "Can be used to get deleted billing subscriptions.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing subscription aliases.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionAliasListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionAliasList": { + "$ref": "./examples/billingSubscriptionAliasList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptions/{billingSubscriptionName}/cancel": { + "post": { + "tags": [ + "BillingSubscription" + ], + "description": "Cancels a usage-based subscription. This operation is supported only for billing accounts of type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_Cancel", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "Request parameters for cancel customer subscription.", + "required": true, + "schema": { + "$ref": "#/definitions/CancelSubscriptionRequest" + } + } + ], + "responses": { + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingSubscriptionsCancel": { + "$ref": "./examples/billingSubscriptionsCancel.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptions/{billingSubscriptionName}/merge": { + "post": { + "tags": [ + "BillingSubscription" + ], + "description": "Merges the billing subscription provided in the request with a target billing subscription.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_Merge", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "Request parameters that are provided to merge the two billing subscriptions.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingSubscriptionMergeRequest" + } + } + ], + "responses": { + "200": { + "description": "The billing properties of a subscription.", + "schema": { + "$ref": "#/definitions/BillingSubscription" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingSubscriptionsMerge": { + "$ref": "./examples/billingSubscriptionsMerge.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptions/{billingSubscriptionName}/move": { + "post": { + "tags": [ + "BillingSubscription" + ], + "description": "Moves charges for a subscription to a new invoice section. The new invoice section must belong to the same billing profile as the existing invoice section. This operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_Move", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "Request parameters to transfer billing subscription.", + "required": true, + "schema": { + "$ref": "#/definitions/MoveBillingSubscriptionRequest" + } + } + ], + "responses": { + "200": { + "description": "The billing properties of a subscription.", + "schema": { + "$ref": "#/definitions/BillingSubscription" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingSubscriptionMove": { + "$ref": "./examples/billingSubscriptionMove.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptions/{billingSubscriptionName}/split": { + "post": { + "tags": [ + "BillingSubscription" + ], + "description": "Splits a subscription into a new subscription with quantity less than current subscription quantity and not equal to 0.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_Split", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "Request parameters that are provided to split the billing subscription.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingSubscriptionSplitRequest" + } + } + ], + "responses": { + "200": { + "description": "The billing properties of a subscription.", + "schema": { + "$ref": "#/definitions/BillingSubscription" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingSubscriptionsSplit": { + "$ref": "./examples/billingSubscriptionsSplit.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptions/{billingSubscriptionName}/validateMoveEligibility": { + "post": { + "tags": [ + "BillingSubscription" + ], + "description": "Validates if charges for a subscription can be moved to a new invoice section. This operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_ValidateMoveEligibility", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "Request parameters to transfer billing subscription.", + "required": true, + "schema": { + "$ref": "#/definitions/MoveBillingSubscriptionRequest" + } + } + ], + "responses": { + "200": { + "description": "The billing properties of a subscription.", + "schema": { + "$ref": "#/definitions/MoveBillingSubscriptionEligibilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionValidateMoveSuccess": { + "$ref": "./examples/billingSubscriptionValidateMoveSuccess.json" + }, + "BillingSubscriptionValidateMoveFailure": { + "$ref": "./examples/billingSubscriptionValidateMoveFailure.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptions/{billingSubscriptionName}": { + "delete": { + "tags": [ + "BillingSubscription" + ], + "description": "Cancels a billing subscription. This operation is supported only for billing accounts of type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingSubscriptionsDelete": { + "$ref": "./examples/billingSubscriptionsDelete.json" + } + } + }, + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Gets a subscription by its ID. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement, Microsoft Partner Agreement, and Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Can be used to expand `Reseller`, `ConsumptionCostCenter`, `LastMonthCharges` and `MonthToDateCharges`", + "type": "string" + } + ], + "responses": { + "200": { + "description": "A billing subscription.", + "schema": { + "$ref": "#/definitions/BillingSubscription" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionsGet": { + "$ref": "./examples/billingSubscriptionsGet.json" + } + } + }, + "patch": { + "tags": [ + "BillingSubscription" + ], + "description": "Updates the properties of a billing subscription.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingSubscriptionNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The billing properties of a subscription.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingSubscriptionPatch" + } + } + ], + "responses": { + "200": { + "description": "The billing properties of a subscription.", + "schema": { + "$ref": "#/definitions/BillingSubscription" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "BillingSubscriptionsUpdate": { + "$ref": "./examples/billingSubscriptionsUpdate.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptions": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Lists the subscriptions for a billing account.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "in": "query", + "name": "includeDeleted", + "description": "Can be used to get deleted billing subscriptions.", + "type": "boolean", + "default": false + }, + { + "in": "query", + "name": "includeTenantSubscriptions", + "description": "Can be used to get tenant-owned billing subscriptions. This field is only applies to Microsoft Online Services Program billing accounts.", + "type": "boolean", + "default": false + }, + { + "in": "query", + "name": "includeFailed", + "description": "Can be used to get failed billing subscriptions.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Can be used to expand `Reseller`, `ConsumptionCostCenter`, `LastMonthCharges` and `MonthToDateCharges`", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing subscriptions.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionsListByBillingAccount": { + "$ref": "./examples/billingSubscriptionsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/billingSubscriptions": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Lists the subscriptions for a customer at billing account level. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_ListByCustomerAtBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/customerNameParameter" + }, + { + "in": "query", + "name": "includeDeleted", + "description": "Can be used to get deleted billing subscriptions.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "Can be used to expand `Reseller`, `ConsumptionCostCenter`, `LastMonthCharges` and `MonthToDateCharges`", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing subscriptions.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionsListByCustomerAtBillingAccount": { + "$ref": "./examples/billingSubscriptionsListByCustomerAtBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}/billingSubscriptions": { + "get": { + "tags": [ + "BillingSubscription" + ], + "description": "Lists the subscriptions for an enrollment account. The operation is supported for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "BillingSubscriptions_ListByEnrollmentAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of billing subscriptions.", + "schema": { + "$ref": "#/definitions/BillingSubscriptionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "BillingSubscriptionsListByEnrollmentAccount": { + "$ref": "./examples/billingSubscriptionsListByEnrollmentAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Beneficiary": { + "description": "Details of the beneficiary.", + "type": "object", + "properties": { + "tenantId": { + "description": "The ID that uniquely identifies a tenant.", + "type": "string" + }, + "objectId": { + "description": "The ID that uniquely identifies a user in a tenant.", + "type": "string" + } + } + }, + "BillingSubscription": { + "description": "The billing properties of a subscription.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "description": "The properties of a(n) BillingSubscription", + "$ref": "#/definitions/BillingSubscriptionProperties", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "BillingSubscriptionAlias": { + "description": "A billing subscription alias.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "description": "The properties of a(n) BillingSubscriptionAlias", + "$ref": "#/definitions/BillingSubscriptionAliasProperties", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "BillingSubscriptionAliasListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingSubscriptionAlias" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "BillingSubscriptionAliasProperties": { + "description": "A billing subscription alias.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/BillingSubscriptionProperties" + } + ], + "properties": { + "billingSubscriptionId": { + "description": "The ID of the billing subscription with the subscription alias.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + }, + "BillingSubscriptionListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "totalCount": { + "description": "Total number of records.", + "type": "number", + "format": "int32", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingSubscription" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "BillingSubscriptionMergeRequest": { + "description": "Request parameters that are provided to merge the two billing subscriptions.", + "type": "object", + "properties": { + "targetBillingSubscriptionName": { + "description": "The ID of the target billing subscription that will be merged with the source subscription provided in the request.", + "type": "string" + }, + "quantity": { + "format": "int32", + "description": "The quantity of the source billing subscription that will be merged with the target billing subscription.", + "type": "integer" + } + } + }, + "BillingSubscriptionPatch": { + "description": "The billing properties of a subscription.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "description": "The properties of a(n) BillingSubscription", + "$ref": "#/definitions/BillingSubscriptionProperties", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "BillingSubscriptionProperties": { + "description": "The billing properties of a subscription.", + "type": "object", + "properties": { + "autoRenew": { + "description": "Indicates whether auto renewal is turned on or off for a product.", + "enum": [ + "Off", + "On" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoRenew", + "modelAsString": true + } + }, + "beneficiaryTenantId": { + "description": "The provisioning tenant of the subscription.", + "type": "string" + }, + "beneficiary": { + "description": "The beneficiary of the billing subscription.", + "$ref": "#/definitions/Beneficiary" + }, + "billingFrequency": { + "description": "The billing frequency in ISO8601 format of product in the subscription. Example: P1M, P3M, P1Y", + "type": "string" + }, + "billingProfileId": { + "description": "The fully qualified ID that uniquely identifies a billing profile.", + "type": "string" + }, + "billingPolicies": { + "type": "object", + "description": "Dictionary of billing policies associated with the subscription.", + "additionalProperties": { + "type": "string" + }, + "maxItems": 50, + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileName": { + "description": "The ID that uniquely identifies a billing profile.", + "type": "string", + "readOnly": true + }, + "consumptionCostCenter": { + "description": "The cost center applied to the subscription. This field is only available for consumption subscriptions of Microsoft Customer Agreement or Enterprise Agreement Type billing accounts.", + "type": "string" + }, + "customerId": { + "description": "The fully qualified ID that uniquely identifies a customer.", + "type": "string" + }, + "customerDisplayName": { + "description": "The name of the customer.", + "type": "string", + "readOnly": true + }, + "customerName": { + "description": "The ID that uniquely identifies a customer.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The name of the billing subscription.", + "type": "string" + }, + "enrollmentAccountId": { + "description": "The enrollment Account ID associated with the subscription. This field is available only for the Enterprise Agreement Type billing accounts.", + "type": "string", + "readOnly": true + }, + "enrollmentAccountDisplayName": { + "description": "The enrollment Account name associated with the subscription. This field is available only for the Enterprise Agreement Type billing accounts.", + "type": "string", + "readOnly": true + }, + "enrollmentAccountSubscriptionDetails": { + "x-ms-client-flatten": true, + "description": "Enrollment Account Subscription details. This field is available only for the Enterprise Agreement Type billing accounts.", + "$ref": "#/definitions/EnrollmentAccountSubscriptionDetails" + }, + "invoiceSectionId": { + "description": "The fully qualified ID that uniquely identifies an invoice section.", + "type": "string" + }, + "invoiceSectionDisplayName": { + "description": "The name of the invoice section.", + "type": "string", + "readOnly": true + }, + "invoiceSectionName": { + "description": "The ID that uniquely identifies an invoice section.", + "type": "string", + "readOnly": true + }, + "lastMonthCharges": { + "description": "The last month's charges. This field is only available for usage based subscriptions of Microsoft Customer Agreement billing accounts.", + "$ref": "./types.json#/definitions/Amount", + "readOnly": true + }, + "monthToDateCharges": { + "description": "The current month to date charges. This field is only available for usage based subscriptions of Microsoft Customer Agreement billing accounts.", + "$ref": "./types.json#/definitions/Amount", + "readOnly": true + }, + "nextBillingCycleDetails": { + "description": "Next billing cycle details of the subscription.", + "$ref": "#/definitions/NextBillingCycleDetails" + }, + "offerId": { + "description": "The offer ID for the subscription. This field is only available for the Microsoft Online Services Program billing accounts.", + "type": "string", + "readOnly": true + }, + "productCategory": { + "description": "The category of the product for which the subscription is purchased. Possible values include: AzureSupport, Hardware, ReservationOrder, SaaS, SavingsPlanOrder, Software, UsageBased, Other.", + "type": "string", + "readOnly": true + }, + "productType": { + "description": "Type of the product for which the subscription is purchased.", + "type": "string", + "readOnly": true + }, + "productTypeId": { + "description": "Id of the product for which the subscription is purchased.", + "type": "string" + }, + "purchaseDate": { + "format": "date-time", + "description": "Purchase date of the product in UTC time.", + "type": "string", + "readOnly": true + }, + "quantity": { + "format": "int64", + "description": "The quantity of licenses or fulfillment units for the subscription.", + "type": "integer" + }, + "reseller": { + "description": "Reseller for this subscription. The fields is not available for Microsoft Partner Agreement billing accounts.", + "$ref": "./types.json#/definitions/Reseller" + }, + "renewalTermDetails": { + "description": "Details for the next renewal term of a subscription.", + "$ref": "#/definitions/RenewalTermDetails" + }, + "skuId": { + "description": "The SKU ID of the product for which the subscription is purchased. This field is is only available for Microsoft Customer Agreement billing accounts.", + "type": "string" + }, + "skuDescription": { + "description": "The SKU description of the product for which the subscription is purchased. This field is is only available for billing accounts with agreement type Microsoft Customer Agreement and Microsoft Partner Agreement.", + "type": "string", + "readOnly": true + }, + "systemOverrides": { + "description": "System imposed policies that regulate behavior of the subscription.", + "$ref": "#/definitions/SystemOverrides" + }, + "resourceUri": { + "description": "Unique identifier of the linked resource.", + "type": "string", + "readOnly": true + }, + "termDuration": { + "description": "The duration in ISO8601 format for which you can use the subscription. Example: P1M, P3M, P1Y", + "type": "string" + }, + "termStartDate": { + "format": "date-time", + "description": "Start date of the term in UTC time.", + "type": "string", + "readOnly": true + }, + "termEndDate": { + "format": "date-time", + "description": "End date of the term in UTC time.", + "type": "string", + "readOnly": true + }, + "provisioningTenantId": { + "description": "The tenant in which the subscription is provisioned.", + "type": "string" + }, + "status": { + "description": "The status of the subscription. This field is not available for Enterprise Agreement billing accounts", + "enum": [ + "Other", + "Unknown", + "Active", + "Disabled", + "Deleted", + "Warned", + "Expiring", + "Expired", + "AutoRenew", + "Cancelled", + "Suspended", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingSubscriptionStatus", + "modelAsString": true + } + }, + "operationStatus": { + "description": "The status of an operation on the subscription. When None, there is no ongoing operation. When LockedForUpdate, write operations will be blocked on the Billing Subscription. Other is the default value and you may need to refer to the latest API version for more details.", + "enum": [ + "Other", + "None", + "LockedForUpdate" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingSubscriptionOperationStatus", + "modelAsString": true + } + }, + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "subscriptionId": { + "description": "The ID of the subscription.", + "type": "string", + "readOnly": true + }, + "suspensionReasons": { + "description": "The suspension reason for a subscription. This field is not available for Enterprise Agreement billing accounts.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "suspensionReasonDetails": { + "description": "The suspension details for a subscription. This field is not available for Enterprise Agreement billing accounts.", + "type": "array", + "items": { + "$ref": "#/definitions/BillingSubscriptionStatusDetails" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + } + }, + "BillingSubscriptionSplitRequest": { + "description": "Request parameters that are provided to split the billing subscription.", + "type": "object", + "properties": { + "targetProductTypeId": { + "description": "The ID of the target product to which the subscription needs to be split into. This value is not same as the value returned in Get API call and can be retrieved from Catalog API to know the product id to split into.", + "type": "string" + }, + "targetSkuId": { + "description": "The ID of the target product to which the subscription needs to be split into. This value is not same as the value returned in Get API call and can be retrieved from Catalog API to know the sku id to split into.", + "type": "string" + }, + "quantity": { + "format": "int32", + "description": "The quantity of the target product to which the subscription needs to be split into.", + "type": "integer" + }, + "termDuration": { + "description": "The term duration of the target in ISO8601 format product to which the subscription needs to be split into. Example: P1M, P1Y", + "type": "string" + }, + "billingFrequency": { + "description": "The billing frequency of the target subscription in the ISO8601 format. Example: P1M, P3M, P1Y\"", + "type": "string" + } + } + }, + "BillingSubscriptionStatusDetails": { + "description": "The suspension details for a subscription. This field is not available for Enterprise Agreement billing accounts.", + "type": "object", + "properties": { + "effectiveDate": { + "format": "date-time", + "description": "The suspension effective date for a subscription. This field is not available for Enterprise Agreement billing accounts.", + "type": "string", + "readOnly": true + }, + "reason": { + "description": "The suspension reason for a subscription. This field is not available for Enterprise Agreement billing accounts.", + "enum": [ + "None", + "Cancelled", + "PastDue", + "SuspiciousActivity", + "Other", + "Transferred", + "PolicyViolation", + "SpendingLimitReached", + "Expired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SubscriptionStatusReason", + "modelAsString": true + } + } + } + }, + "CancelSubscriptionRequest": { + "description": "Request parameters for cancel customer subscription.", + "required": [ + "cancellationReason" + ], + "type": "object", + "properties": { + "cancellationReason": { + "description": "Cancellation reason.", + "enum": [ + "Other", + "Compromise", + "Dispute" + ], + "type": "string", + "x-ms-enum": { + "name": "CancellationReason", + "modelAsString": true + } + }, + "customerId": { + "description": "The fully qualified ID that uniquely identifies a customer.", + "type": "string" + } + } + }, + "EnrollmentAccountSubscriptionDetails": { + "description": "The billing properties that can be modified. Available only for the Enterprise Agreement Type.", + "type": "object", + "properties": { + "enrollmentAccountStartDate": { + "format": "date-time", + "description": "The enrollment Account and the subscription association start date. This field is available only for the Enterprise Agreement Type.", + "type": "string", + "readOnly": true + }, + "subscriptionEnrollmentAccountStatus": { + "description": "The current enrollment account status of the subscription. This field is available only for the Enterprise Agreement Type.", + "enum": [ + "Active", + "Cancelled", + "Expired", + "Deleted", + "TransferredOut", + "Transferring", + "Inactive" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SubscriptionEnrollmentAccountStatus", + "modelAsString": true + } + } + }, + "readOnly": true + }, + "MoveBillingSubscriptionEligibilityResult": { + "description": "Result of the transfer eligibility validation.", + "type": "object", + "properties": { + "isMoveEligible": { + "description": "Specifies whether the subscription is eligible to be transferred.", + "type": "boolean", + "readOnly": true + }, + "errorDetails": { + "description": "Error details of the transfer eligibility validation.", + "$ref": "#/definitions/MoveBillingSubscriptionErrorDetails" + } + } + }, + "MoveBillingSubscriptionErrorDetails": { + "description": "Error details of the transfer eligibility validation.", + "type": "object", + "properties": { + "code": { + "description": "Error code of the transfer validation response.", + "enum": [ + "Other", + "BillingAccountInactive", + "DestinationBillingProfileInactive", + "DestinationBillingProfileNotFound", + "DestinationBillingProfilePastDue", + "DestinationInvoiceSectionInactive", + "DestinationInvoiceSectionNotFound", + "InsufficientPermissionOnDestination", + "InsufficientPermissionOnSource", + "InvalidDestination", + "InvalidSource", + "MarketplaceNotEnabledOnDestination", + "ProductInactive", + "ProductNotFound", + "ProductTypeNotSupported", + "SourceBillingProfilePastDue", + "SourceInvoiceSectionInactive", + "AccountIsLocked", + "AssetHasCap", + "AssetNotActive", + "BillingProfilePastDue", + "CrossBillingAccountNotAllowed", + "NoActiveAzurePlan", + "None", + "SubscriptionNotActive", + "SubscriptionHasReservations", + "SubscriptionTypeNotSupported", + "InvoiceSectionIsRestricted" + ], + "type": "string", + "x-ms-enum": { + "name": "subscriptionTransferValidationErrorCode", + "modelAsString": true + } + }, + "message": { + "description": "The error message.", + "type": "string" + }, + "details": { + "description": "Detailed error message explaining the error.", + "type": "string" + } + } + }, + "MoveBillingSubscriptionRequest": { + "description": "Request parameters to transfer billing subscription.", + "type": "object", + "properties": { + "destinationInvoiceSectionId": { + "description": "The destination invoice section id.", + "type": "string" + }, + "destinationEnrollmentAccountId": { + "description": "The destination enrollment account id.", + "type": "string" + } + } + }, + "NextBillingCycleDetails": { + "description": "Billing cycle details of the product.", + "type": "object", + "properties": { + "billingFrequency": { + "description": "Billing frequency of the product under the subscription.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + }, + "RenewalTermDetails": { + "description": "Details for the next renewal term of a subscription.", + "type": "object", + "properties": { + "billingFrequency": { + "description": "The billing frequency in ISO8601 format of product in the subscription. Example: P1M, P3M, P1Y", + "type": "string", + "readOnly": true + }, + "productId": { + "description": "Id of the product for which the subscription is purchased.", + "type": "string", + "readOnly": true + }, + "productTypeId": { + "description": "Type Id of the product for which the subscription is purchased.", + "type": "string", + "readOnly": true + }, + "skuId": { + "description": "The SKU ID of the product for which the subscription is purchased. This field is is only available for Microsoft Customer Agreement billing accounts.", + "type": "string", + "readOnly": true + }, + "termDuration": { + "description": "The duration in ISO8601 format for which you can use the subscription. Example: P1M, P3M, P1Y", + "type": "string", + "readOnly": true + }, + "quantity": { + "format": "int64", + "description": "The quantity of licenses or fulfillment units for the subscription.", + "type": "integer" + }, + "termEndDate": { + "format": "date-time", + "description": "End date of the term in UTC time.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + }, + "SystemOverrides": { + "description": "System imposed policies that regulate behavior of the subscription.", + "type": "object", + "properties": { + "cancellation": { + "description": "The policy override for the subscription indicates whether the self-serve cancellation or seat reduction is allowed.", + "enum": [ + "NotAllowed", + "Allowed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "Cancellation", + "modelAsString": true + } + }, + "cancellationAllowedEndDate": { + "format": "date-time", + "description": "The end date in UTC time by when the self-serve cancellation ends.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "billingAccountNameParameter": { + "name": "billingAccountName", + "in": "path", + "description": "The ID that uniquely identifies a billing account.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "transferTrackingGuidParameter": { + "name": "transferTrackingGuid", + "in": "path", + "description": "The ID that uniquely identifies a billing subscription transfer request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingProfileNameParameter": { + "name": "billingProfileName", + "in": "path", + "description": "The ID that uniquely identifies a billing profile.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingSubscriptionAliasNameParameter": { + "name": "aliasName", + "in": "path", + "description": "The ID that uniquely identifies a subscription alias.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingSubscriptionNameParameter": { + "name": "billingSubscriptionName", + "in": "path", + "description": "The ID that uniquely identifies a subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "costCenterNameParameter": { + "name": "costCenterName", + "x-ms-parameter-location": "method", + "in": "query", + "required": true, + "description": "Request parameters that are provided to the update cost center operation.", + "type": "string" + }, + "customerNameParameter": { + "name": "customerName", + "in": "path", + "description": "The ID that uniquely identifies a customer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "enrollmentAccountNameParameter": { + "name": "enrollmentAccountName", + "in": "path", + "description": "The ID that uniquely identifies an enrollment account.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "departmentNameParameter": { + "name": "departmentName", + "in": "path", + "description": "The ID that uniquely identifies a department.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "invoiceSectionNameParameter": { + "name": "invoiceSectionName", + "in": "path", + "description": "The ID that uniquely identifies an invoice section.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/customer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/customer.json new file mode 100644 index 000000000000..b09b64b1cde4 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/customer.json @@ -0,0 +1,379 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}": { + "get": { + "tags": [ + "Customer" + ], + "description": "Gets a customer by its ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Customers_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A partner's customer.", + "schema": { + "$ref": "#/definitions/Customer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomersGet": { + "$ref": "./examples/customersGet.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers": { + "get": { + "tags": [ + "Customer" + ], + "description": "Lists the customers that are billed to a billing profile. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Customers_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "May be used to expand enabledAzurePlans and resellers", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "A list of customers.", + "schema": { + "$ref": "#/definitions/CustomerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomersListByBillingProfile": { + "$ref": "./examples/customersListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}": { + "get": { + "tags": [ + "Customer" + ], + "description": "Gets a customer by its ID at billing account level. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Customers_GetByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A partner's customer.", + "schema": { + "$ref": "#/definitions/Customer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomersGetByBillingAccount": { + "$ref": "./examples/customersGetByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers": { + "get": { + "tags": [ + "Customer" + ], + "description": "Lists the customers that are billed to a billing account. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Customers_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "expand", + "description": "May be used to expand enabledAzurePlans and resellers", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "A list of customers.", + "schema": { + "$ref": "#/definitions/CustomerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CustomersListByBillingAccount": { + "$ref": "./examples/customersListByBillingAccount.json" + }, + "CustomersListByBillingAccountWithExpand": { + "$ref": "./examples/customersListByBillingAccountWithExpand.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Customer": { + "description": "A partner's customer.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CustomerProperties" + } + }, + "x-ms-azure-resource": true + }, + "CustomerListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Customer" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "CustomerProperties": { + "description": "A partner's customer.", + "type": "object", + "properties": { + "billingProfileDisplayName": { + "description": "The name of the billing profile.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "The fully qualified ID that uniquely identifies a billing profile.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The name of the customer.", + "type": "string", + "readOnly": true + }, + "systemId": { + "description": "The system generated unique identifier for a customer.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Identifies the status of an customer. This is an upcoming property that will be populated in the future.", + "enum": [ + "Other", + "Active", + "Pending", + "Disabled", + "Warned", + "Deleted", + "UnderReview" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CustomerStatus", + "modelAsString": true + } + }, + "enabledAzurePlans": { + "description": "Azure plans enabled for the customer.", + "type": "array", + "items": { + "$ref": "./types.json#/definitions/AzurePlan" + }, + "x-ms-identifiers": [] + }, + "resellers": { + "description": "The list of resellers for which an Azure plan is enabled for the customer.", + "type": "array", + "items": { + "$ref": "./types.json#/definitions/Reseller" + }, + "x-ms-identifiers": [] + }, + "tags": { + "description": "Dictionary of metadata associated with the resource. Maximum key/value length supported of 256 characters. Keys/value should not empty value nor null. Keys can not contain < > % & \\ ? /", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/department.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/department.json new file mode 100644 index 000000000000..0f713d098362 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/department.json @@ -0,0 +1,204 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}": { + "get": { + "tags": [ + "Department" + ], + "description": "Gets a department by ID. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Departments_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Department" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DepartmentGet": { + "$ref": "./examples/departmentGet.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments": { + "get": { + "tags": [ + "Department" + ], + "description": "Lists the departments that a user has access to. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Departments_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DepartmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DepartmentsListByBillingAccount": { + "$ref": "./examples/departmentsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Department": { + "description": "Optional grouping of enrollment accounts to segment costs into logical groupings and set budgets.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DepartmentProperties" + } + }, + "x-ms-azure-resource": true + }, + "DepartmentListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Department" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "DepartmentProperties": { + "description": "Optional grouping of enrollment accounts to segment costs into logical groupings and set budgets.", + "type": "object", + "properties": { + "costCenter": { + "description": "The cost center associated with the department.", + "type": "string" + }, + "displayName": { + "description": "The name of the department.", + "type": "string" + }, + "id": { + "description": "The ID that uniquely identifies the department.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the department.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/enrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/enrollmentAccount.json new file mode 100644 index 000000000000..e4d18239081e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/enrollmentAccount.json @@ -0,0 +1,352 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/enrollmentAccounts/{enrollmentAccountName}": { + "get": { + "tags": [ + "EnrollmentAccount" + ], + "description": "Gets an enrollment account by department. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "EnrollmentAccounts_GetByDepartment", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/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": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnrollmentAccountByDepartment": { + "$ref": "./examples/enrollmentAccountByDepartment.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/departments/{departmentName}/enrollmentAccounts": { + "get": { + "tags": [ + "EnrollmentAccount" + ], + "description": "Lists the enrollment accounts for a department. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "EnrollmentAccounts_ListByDepartment", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/departmentName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnrollmentAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnrollmentAccountsListByDepartment": { + "$ref": "./examples/enrollmentAccountsListByDepartment.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts/{enrollmentAccountName}": { + "get": { + "tags": [ + "EnrollmentAccount" + ], + "description": "Gets an enrollment account by ID. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "EnrollmentAccounts_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/enrollmentAccountName" + }, + { + "$ref": "./types.json#/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": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnrollmentAccountGet": { + "$ref": "./examples/enrollmentAccountGet.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/enrollmentAccounts": { + "get": { + "tags": [ + "EnrollmentAccount" + ], + "description": "Lists the enrollment accounts for a billing account. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "EnrollmentAccounts_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnrollmentAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "EnrollmentAccountsListByBillingAccount": { + "$ref": "./examples/enrollmentAccountsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "EnrollmentAccount": { + "description": "It is an organizational hierarchy within a billing account to administer and manage azure costs.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EnrollmentAccountProperties" + } + }, + "x-ms-azure-resource": true + }, + "EnrollmentAccountListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/EnrollmentAccount" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "EnrollmentAccountProperties": { + "description": "It is an organizational hierarchy within a billing account to administer and manage azure costs.", + "type": "object", + "properties": { + "costCenter": { + "description": "The cost center associated with the enrollment account.", + "type": "string" + }, + "displayName": { + "description": "The name of the enrollment account.", + "type": "string" + }, + "departmentDisplayName": { + "description": "The name of the department under which the enrollment account exists.", + "type": "string", + "readOnly": true + }, + "departmentId": { + "description": "The ID that uniquely identifies the department.", + "type": "string", + "readOnly": true + }, + "isDevTestEnabled": { + "description": "Boolean flag which enables subscribers to run development and testing workloads on Azure at special Dev/Test rates.", + "type": "boolean" + }, + "accountOwner": { + "description": "The owner of the enrollment account.", + "type": "string", + "readOnly": true + }, + "authType": { + "description": "The authorization type of the enrollment account.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the enrollment account.", + "type": "string", + "readOnly": true + }, + "startDate": { + "format": "date-time", + "description": "The date from which the enrollment account became valid and functional.", + "type": "string", + "readOnly": true + }, + "endDate": { + "format": "date-time", + "description": "The date of expiration of the enrollment account.", + "type": "string", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/addressValidateInvalid.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/addressValidateInvalid.json new file mode 100644 index 000000000000..00d4ffedb254 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/addressValidateInvalid.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "parameters": { + "addressLine1": "1 Test", + "city": "bellevue", + "country": "us", + "postalCode": "12345", + "region": "wa" + } + }, + "responses": { + "200": { + "body": { + "status": "Invalid", + "suggestedAddresses": [ + { + "addressLine1": "1 Test Address", + "city": "Bellevue", + "country": "US", + "postalCode": "98052", + "region": "WA" + }, + { + "addressLine1": "1 Test Address", + "city": "Bellevue", + "country": "US", + "postalCode": "12345-0000", + "region": "WA" + } + ], + "validationMessage": "Invalid address" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/addressValidateValid.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/addressValidateValid.json new file mode 100644 index 000000000000..e5151a2e24e1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/addressValidateValid.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "parameters": { + "addressLine1": "1 Test", + "city": "bellevue", + "country": "us", + "postalCode": "12345", + "region": "wa" + } + }, + "responses": { + "200": { + "body": { + "status": "Valid" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/agreementByName.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/agreementByName.json new file mode 100644 index 000000000000..bdfd3e93dc2a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/agreementByName.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "agreementName": "ABC123" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/agreements/ABC123", + "name": "ABC123", + "properties": { + "acceptanceMode": "ClickToAccept", + "agreementLink": "https://contoso.com", + "displayName": "Microsoft Customer Agreement", + "effectiveDate": "2018-11-01T00:00:00Z", + "expirationDate": "2019-11-01T00:00:00Z", + "status": "Active", + "leadBillingAccountName": "20000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "type": "Microsoft.Billing/billingAccounts/agreements" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/agreementsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/agreementsListByBillingAccount.json new file mode 100644 index 000000000000..283236bf49f7 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/agreementsListByBillingAccount.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expand": "Participants" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/agreements/ABC123", + "name": "ABC123", + "properties": { + "acceptanceMode": "ClickToAccept", + "agreementLink": "https://contoso.com", + "displayName": "Microsoft Customer Agreement", + "effectiveDate": "2018-11-01T00:00:00Z", + "expirationDate": "2019-11-01T00:00:00Z", + "participants": [ + { + "email": "abc@contoso.com", + "status": "Accepted", + "statusDate": "2018-11-01T00:00:00Z" + }, + { + "email": "xtz@contoso.com", + "status": "Declined", + "statusDate": "2018-11-02T00:00:00Z" + } + ], + "status": "Active", + "leadBillingAccountName": "20000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "type": "Microsoft.Billing/billingAccounts/agreements" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/agreements/DEF456", + "name": "DEF456", + "properties": { + "acceptanceMode": "ESignEmbedded", + "agreementLink": "https://contoso.com", + "displayName": "Microsoft Customer Agreement", + "effectiveDate": "2018-12-05T00:00:00Z", + "expirationDate": "2019-12-05T00:00:00Z", + "participants": [ + { + "email": "abc@contoso.com", + "status": "Pending", + "statusDate": "2018-12-05T00:00:00Z" + } + ], + "status": "PendingSignature", + "leadBillingAccountName": "20000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "type": "Microsoft.Billing/billingAccounts/agreements" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsCreateOrUpdate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsCreateOrUpdate.json new file mode 100644 index 000000000000..7367b006742b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsCreateOrUpdate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "associatedTenantName": "11111111-1111-1111-1111-111111111111", + "parameters": { + "properties": { + "displayName": "Contoso Finance", + "billingManagementState": "Active", + "provisioningManagementState": "Pending" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/associatedTenants/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "displayName": "Contoso Finance", + "tenantId": "11111111-1111-1111-1111-111111111111", + "billingManagementState": "Active", + "provisioningManagementState": "Pending", + "provisioningBillingRequestId": "/providers/Microsoft.Billing/billingRequests/22222222-2222-2222-2222-222222222222" + }, + "type": "Microsoft.Billing/billingAccounts/associatedTenants" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/associatedTenants/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "displayName": "Contoso Finance", + "tenantId": "11111111-1111-1111-1111-111111111111", + "billingManagementState": "Active", + "provisioningManagementState": "Pending", + "provisioningBillingRequestId": "/providers/Microsoft.Billing/billingRequests/22222222-2222-2222-2222-222222222222" + }, + "type": "Microsoft.Billing/billingAccounts/associatedTenants" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsDelete.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsDelete.json new file mode 100644 index 000000000000..17946737cdb4 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "associatedTenantName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/deleteAssociatedTenant_00000000-0000-0000-0000-000000000000?api-version=2024-04-01", + "retry-after": "10" + } + }, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsGet.json new file mode 100644 index 000000000000..704bd064d321 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "associatedTenantName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/associatedTenants/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "displayName": "Contoso Finance", + "tenantId": "11111111-1111-1111-1111-111111111111", + "billingManagementState": "Active", + "provisioningManagementState": "Pending", + "provisioningBillingRequestId": "/providers/Microsoft.Billing/billingRequests/22222222-2222-2222-2222-222222222222" + }, + "type": "Microsoft.Billing/billingAccounts/associatedTenants" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsListByBillingAccount.json new file mode 100644 index 000000000000..c2329496b2cc --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/associatedTenantsListByBillingAccount.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-000000000000:00000000-0000-0000-000000000000_2019-05-31/associatedTenants/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "displayName": "Contoso Finance", + "tenantId": "11111111-1111-1111-1111-111111111111", + "billingManagementState": "Active", + "provisioningManagementState": "NotRequested" + }, + "type": "Microsoft.Billing/billingAccounts/associatedTenants" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-000000000000:00000000-0000-0000-000000000000_2019-05-31/associatedTenants/22222222-2222-2222-2222-222222222222", + "name": "22222222-2222-2222-2222-222222222222", + "properties": { + "displayName": "Contoso Engineering", + "tenantId": "22222222-2222-2222-2222-222222222222", + "billingManagementState": "NotAllowed", + "provisioningManagementState": "Pending", + "provisioningBillingRequestId": "/providers/Microsoft.Billing/billingRequests/22222222-2222-2222-2222-222222222222" + }, + "type": "Microsoft.Billing/billingAccounts/associatedTenants" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/availableBalanceGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/availableBalanceGetByBillingAccount.json new file mode 100644 index 000000000000..f915eff05d30 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/availableBalanceGetByBillingAccount.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/availableBalance/default", + "name": "default", + "properties": { + "amount": { + "currency": "USD", + "value": 500 + }, + "paymentsOnAccount": [ + { + "amount": { + "currency": "USD", + "value": 50 + }, + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Finance", + "invoiceId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "invoiceName": "G123456789", + "date": "2024-04-01T00:00:00.0000000Z", + "type": "CheckWire" + }, + { + "amount": { + "currency": "USD", + "value": 150 + }, + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/yyyy-yyyy-yyy-yyy", + "billingProfileDisplayName": "Contoso Engineering", + "invoiceId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G987654321", + "invoiceName": "G987654321", + "date": "2023-01-01T00:00:00.0000000Z", + "type": "CheckWire" + } + ], + "totalPaymentsOnAccount": { + "currency": "USD", + "value": 200 + } + }, + "type": "Microsoft.Billing/billingAccounts/availableBalance" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/availableBalanceGetByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/availableBalanceGetByBillingProfile.json new file mode 100644 index 000000000000..001a4baece76 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/availableBalanceGetByBillingProfile.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/availableBalance/default", + "name": "default", + "properties": { + "amount": { + "currency": "USD", + "value": 500 + }, + "paymentsOnAccount": [ + { + "amount": { + "currency": "USD", + "value": 50 + }, + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Finance", + "invoiceId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "invoiceName": "G123456789", + "date": "2024-04-01T00:00:00.0000000Z", + "type": "CheckWire" + } + ], + "totalPaymentsOnAccount": { + "currency": "USD", + "value": 200 + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/availableBalance" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountForLegacyAccountDetails.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountForLegacyAccountDetails.json new file mode 100644 index 000000000000..f7e56656bc53 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountForLegacyAccountDetails.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/20000000-0000-0000-0000-000000000001", + "name": "20000000-0000-0000-0000-000000000001", + "properties": { + "accountStatus": "Active", + "accountType": "Individual", + "agreementType": "MicrosoftOnlineServicesProgram", + "displayName": "Individual Account 2", + "hasReadAccess": true, + "notificationEmailAddress": "individual@domain.com" + }, + "type": "Microsoft.Billing/billingAccounts" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountUpdateWithPONumber.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountUpdateWithPONumber.json new file mode 100644 index 000000000000..7321a968cdde --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountUpdateWithPONumber.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6575495", + "parameters": { + "properties": { + "enrollmentDetails": { + "poNumber": "poNumber123" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/6575495", + "name": "6575495", + "properties": { + "accountStatus": "Active", + "accountType": "Enterprise", + "accountSubType": "None", + "agreementType": "EnterpriseAgreement", + "displayName": "Enterprise Account", + "enrollmentDetails": { + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z", + "currency": "USD", + "channel": "EaDirect", + "language": "en", + "countryCode": "US", + "billingCycle": "Monthly", + "extendedTermOption": "Opted-Out", + "supportLevel": "Standard", + "supportCoverage": "1/26/2021 - 6/30/2021", + "cloud": "Azure Commercial", + "poNumber": "poNumber123" + }, + "hasReadAccess": true, + "soldTo": { + "addressLine1": "Test Address", + "addressLine2": "Test Address", + "addressLine3": "Test Address", + "city": "City", + "country": "US", + "postalCode": "00000", + "region": "WA" + } + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/6575495/operationStatus/65e1f2bf-c31c-4b89-a599-25d9d4172af9?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithExpandForPONumber.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithExpandForPONumber.json new file mode 100644 index 000000000000..a8a4eae01e60 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithExpandForPONumber.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "8608480", + "expand": "enrollmentDetails/poNumber" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892", + "name": "6564892", + "properties": { + "accountStatus": "Active", + "accountType": "Enterprise", + "agreementType": "EnterpriseAgreement", + "displayName": "Enterprise Account", + "enrollmentDetails": { + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z", + "currency": "USD", + "channel": "EaDirect", + "language": "en", + "countryCode": "US", + "billingCycle": "Monthly", + "extendedTermOption": "Opted-Out", + "supportLevel": "Standard", + "supportCoverage": "1/26/2021 - 6/30/2021", + "cloud": "Azure Commercial", + "poNumber": "poNumber123" + }, + "hasReadAccess": true + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithRegistrationNumberWithDefaultType.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithRegistrationNumberWithDefaultType.json new file mode 100644 index 000000000000..86534b8a205f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithRegistrationNumberWithDefaultType.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001", + "registrationNumber": { + "id": "RegistrationId", + "type": [ + "RegistrationNumber" + ] + } + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithRegistrationNumberWithType.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithRegistrationNumberWithType.json new file mode 100644 index 000000000000..9b19667a2f93 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountWithRegistrationNumberWithType.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001", + "registrationNumber": { + "id": "SomeRegistrationId", + "required": true, + "type": [ + "TIN" + ] + } + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsConfirmTransition.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsConfirmTransition.json new file mode 100644 index 000000000000..90931c5366b0 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsConfirmTransition.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "transitionDate": "2021-05-17T00:00:00Z", + "anniversaryDay": 12 + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGet.json new file mode 100644 index 000000000000..0fc46a87e950 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001" + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGetEA.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGetEA.json new file mode 100644 index 000000000000..392b6b882046 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGetEA.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6575495" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/6575495", + "name": "6575495", + "properties": { + "agreementType": "EnterpriseAgreement", + "enrollmentDetails": { + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z", + "currency": "USD", + "channel": "EaDirect", + "language": "en", + "countryCode": "US", + "billingCycle": "Monthly", + "extendedTermOption": "Opted-Out", + "supportLevel": "Standard", + "supportCoverage": "1/26/2021 - 6/30/2021", + "cloud": "Azure Commercial", + "markupStatus": "Published", + "indirectRelationshipInfo": { + "billingAccountName": "pcn.12345", + "billingProfileName": "", + "displayName": "Test partner" + }, + "invoiceRecipient": "abc@contoso.com" + }, + "soldTo": { + "addressLine1": "Test Address", + "addressLine2": "Test Address", + "addressLine3": "Test Address", + "city": "City", + "country": "US", + "postalCode": "00000", + "region": "WA" + } + }, + "type": "Microsoft.Billing/billingAccounts" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGetWithExpand.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGetWithExpand.json new file mode 100644 index 000000000000..7c101eff04f6 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsGetWithExpand.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expand": "SoldTo" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001", + "soldTo": { + "addressLine1": "1 Microsoft Way", + "city": "Redmond", + "companyName": "Contoso", + "country": "US", + "postalCode": "98052-8300", + "region": "WA", + "isValidAddress": true + } + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsList.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsList.json new file mode 100644 index 000000000000..02fe22b4756a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2024-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001" + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/20000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "20000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Professional", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Standard Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001" + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/30000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "30000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Individual", + "accountSubType": "Individual", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Individual Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001" + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/40000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "40000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftPartnerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001" + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsListWithExpandForPONumber.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsListWithExpandForPONumber.json new file mode 100644 index 000000000000..0174a6199e51 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsListWithExpandForPONumber.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "expand": "soldTo,enrollmentDetails/poNumber" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892", + "name": "6564892", + "properties": { + "accountStatus": "Active", + "accountType": "Enterprise", + "accountSubType": "None", + "agreementType": "EnterpriseAgreement", + "displayName": "Enterprise Account", + "enrollmentDetails": { + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z", + "currency": "USD", + "channel": "EaDirect", + "language": "en", + "countryCode": "US", + "billingCycle": "Monthly", + "extendedTermOption": "Opted-Out", + "supportLevel": "Standard", + "supportCoverage": "1/26/2021 - 6/30/2021", + "cloud": "Azure Commercial", + "poNumber": "poNumber123" + }, + "hasReadAccess": true, + "soldTo": { + "addressLine1": "Test Address", + "city": "City", + "companyName": "Enterprise Company", + "country": "US", + "postalCode": "00000-1111", + "region": "WA" + } + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsUpdate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsUpdate.json new file mode 100644 index 000000000000..5ca422dc07fc --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingAccountsUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "parameters": { + "properties": { + "displayName": "Test Account", + "soldTo": { + "addressLine1": "1 Microsoft Way", + "city": "Redmond", + "companyName": "Contoso", + "country": "US", + "postalCode": "98052-8300", + "region": "WA" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001", + "soldTo": { + "addressLine1": "1 Microsoft Way", + "city": "Redmond", + "companyName": "Contoso", + "country": "US", + "postalCode": "98052-8300", + "region": "WA", + "isValidAddress": true + } + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/patchBillingAccount_11111111-1111-1111-1111-111111111111?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByBillingAccount.json new file mode 100644 index 000000000000..3519809beda0 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByBillingAccount.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "actions": [ + "10000000-aaaa-bbbb-cccc-200000000006", + "10000000-aaaa-bbbb-cccc-200000000003", + "10000000-aaaa-bbbb-cccc-200000000002", + "10000000-aaaa-bbbb-cccc-200000000001", + "10000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000015", + "20000000-aaaa-bbbb-cccc-200000000002", + "30000000-aaaa-bbbb-cccc-200000000009", + "40000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000000", + "20000000-aaaa-bbbb-cccc-200000000000", + "10000000-aaaa-bbbb-cccc-200000000008", + "10000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000001" + ], + "notActions": [] + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByBillingProfile.json new file mode 100644 index 000000000000..30679725582c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByBillingProfile.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "actions": [ + "10000000-aaaa-bbbb-cccc-200000000006", + "10000000-aaaa-bbbb-cccc-200000000003", + "10000000-aaaa-bbbb-cccc-200000000002", + "10000000-aaaa-bbbb-cccc-200000000001", + "10000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000015", + "20000000-aaaa-bbbb-cccc-200000000002", + "30000000-aaaa-bbbb-cccc-200000000009", + "40000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000000", + "20000000-aaaa-bbbb-cccc-200000000000", + "10000000-aaaa-bbbb-cccc-200000000008", + "10000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000001" + ], + "notActions": [] + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByCustomer.json new file mode 100644 index 000000000000..fb764cafa323 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByCustomer.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "customerName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000001" + ], + "notActions": [] + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByCustomerAtBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByCustomerAtBillingAccount.json new file mode 100644 index 000000000000..e95cf4b397d2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByCustomerAtBillingAccount.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "customerName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000001" + ], + "notActions": [] + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByDepartment.json new file mode 100644 index 000000000000..2b7fd0d80bdb --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByDepartment.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6100092", + "departmentName": "123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "actions": [ + "Microsoft.Billing/billingAccounts/departments/read", + "Microsoft.Billing/billingAccounts/departments/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/write" + ], + "notActions": [] + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByEnrollmentAccount.json new file mode 100644 index 000000000000..c694c3a90d9a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByEnrollmentAccount.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6100092", + "enrollmentAccountName": "123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "actions": [ + "Microsoft.Billing/billingAccounts/enrollmentAccounts/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/write" + ], + "notActions": [] + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByInvoiceSection.json new file mode 100644 index 000000000000..6ef4355259fc --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPermissionsListByInvoiceSection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "XXXX-XXXX-XXX-XXX" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000001" + ], + "notActions": [] + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesCreateOrUpdate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesCreateOrUpdate.json new file mode 100644 index 000000000000..9b1233afe9d0 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesCreateOrUpdate.json @@ -0,0 +1,154 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "parameters": { + "properties": { + "billTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "displayName": "Billing Profile 1", + "enabledAzurePlans": [ + { + "skuId": "0001" + }, + { + "skuId": "0002" + } + ], + "invoiceEmailOptIn": true, + "poNumber": "ABC12345", + "shipTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "name": "xxxx-xxxx-xxx-xxx", + "properties": { + "billTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "currency": "USD", + "displayName": "Billing Profile 1", + "hasReadAccess": true, + "invoiceDay": 5, + "invoiceEmailOptIn": true, + "poNumber": "ABC12345", + "shipTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "status": "Active", + "systemId": "11111111-1111-1111-1111-111111111111" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "name": "xxxx-xxxx-xxx-xxx", + "properties": { + "billTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "currency": "USD", + "displayName": "Billing Profile 1", + "hasReadAccess": true, + "invoiceDay": 5, + "invoiceEmailOptIn": true, + "poNumber": "ABC12345", + "shipTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "status": "Active", + "systemId": "11111111-1111-1111-1111-111111111111" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles" + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/putBillingProfile_00000000-0000-0000-0000-000000000000?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesDelete.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesDelete.json new file mode 100644 index 000000000000..5dc408f1b7ce --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesDelete.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "parameters": { + "properties": { + "billTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "displayName": "Billing Profile 1", + "enabledAzurePlans": [ + { + "skuId": "0001" + }, + { + "skuId": "0002" + } + ], + "invoiceEmailOptIn": true, + "poNumber": "ABC12345", + "shipTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/deleteBillingProfile_00000000-0000-0000-0000-000000000000?api-version=2024-04-01", + "retry-after": "10" + } + }, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesGet.json new file mode 100644 index 000000000000..9bd3c1489818 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesGet.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "name": "xxxx-xxxx-xxx-xxx", + "properties": { + "billTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "currency": "USD", + "displayName": "Billing Profile 1", + "hasReadAccess": true, + "invoiceDay": 5, + "invoiceEmailOptIn": true, + "invoiceRecipients": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "poNumber": "ABC12345", + "shipTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "soldTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "spendingLimit": "On", + "spendingLimitDetails": [ + { + "amount": 200, + "currency": "USD", + "startDate": "2018-01-01T00:00:00.0000000Z", + "endDate": "2019-01-01T00:00:00.0000000Z", + "type": "FreeAccount", + "status": "Active" + } + ], + "status": "Warned", + "statusReasonCode": "PastDue", + "systemId": "11111111-1111-1111-1111-111111111111" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesListByBillingAccount.json new file mode 100644 index 000000000000..670323da178e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesListByBillingAccount.json @@ -0,0 +1,219 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "name": "xxxx-xxxx-xxx-xxx", + "properties": { + "billTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "currency": "USD", + "displayName": "Billing Profile 1", + "hasReadAccess": true, + "invoiceDay": 5, + "invoiceEmailOptIn": true, + "invoiceRecipients": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "poNumber": "ABC12345", + "shipTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "soldTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "spendingLimit": "On", + "spendingLimitDetails": [ + { + "amount": 200, + "currency": "USD", + "startDate": "2018-01-01T00:00:00.0000000Z", + "endDate": "2019-01-01T00:00:00.0000000Z", + "type": "FreeAccount", + "status": "Active" + } + ], + "status": "Warned", + "statusReasonCode": "PastDue", + "systemId": "11111111-1111-1111-1111-111111111111" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/yyyy-yyyy-yyy-yyy", + "name": "yyyy-yyyy-yyy-yyy", + "properties": { + "billTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "currency": "USD", + "displayName": "Billing Profile 2", + "hasReadAccess": true, + "invoiceDay": 5, + "invoiceEmailOptIn": true, + "invoiceRecipients": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "poNumber": "ABC12345", + "shipTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "soldTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "status": "UnderReview", + "statusReasonCode": "UnusualActivity", + "systemId": "22222222-2222-2222-2222-222222222222" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/zzzz-zzzz-zzz-zzz", + "name": "zzzz-zzzz-zzz-zzz", + "properties": { + "billTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "currency": "USD", + "displayName": "Billing Profile 1", + "hasReadAccess": true, + "invoiceDay": 5, + "invoiceEmailOptIn": true, + "invoiceRecipients": [ + "abc@contoso.com", + "xyz@contoso.com" + ], + "poNumber": "ABC12345", + "shipTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "soldTo": { + "addressLine1": "Test Address1", + "addressLine2": "Test Address2", + "addressLine3": "Test Address3", + "city": "City", + "companyName": "Contoso", + "country": "US", + "email": "abc@contoso.com", + "firstName": "Test", + "lastName": "User", + "phoneNumber": "000-000-0000", + "postalCode": "00000", + "region": "WA", + "isValidAddress": true + }, + "status": "Active", + "systemId": "33333333-3333-3333-3333-333333333333" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesValidateDeleteEligibilityFailure.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesValidateDeleteEligibilityFailure.json new file mode 100644 index 000000000000..f4cb52ebad28 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesValidateDeleteEligibilityFailure.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "eligibilityStatus": "NotAllowed", + "eligibilityDetails": [ + { + "code": "ActiveBillingSubscriptions", + "message": "There are active or disabled subscriptions assigned to the invoice section. Either move the subscription to another invoice section or delete the subscriptions and then try deleting the invoice section." + }, + { + "code": "LastBillingProfile", + "message": "Billing profile cannot be deleted as this is the only billing profile in this billing account." + }, + { + "code": "OutstandingCharges", + "message": "Billing Profile cannot be deleted as there are outstanding charges on this billing profile." + }, + { + "code": "PendingCharges", + "message": "Billing Profile cannot be deleted as there are pending charges accumulating on this billing profile." + }, + { + "code": "ReservedInstances", + "message": "Billing Profile cannot be deleted as there are reserved assets with a billing plan." + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesValidateDeleteEligibilitySuccess.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesValidateDeleteEligibilitySuccess.json new file mode 100644 index 000000000000..540e412efe3a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingProfilesValidateDeleteEligibilitySuccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMCA.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMCA.json new file mode 100644 index 000000000000..d5816237b19a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMCA.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingProperty/default", + "name": "default", + "properties": { + "billingAccountAgreementType": "MicrosoftCustomerAgreement", + "billingAccountDisplayName": "My Account", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000", + "billingAccountSoldToCountry": "US", + "billingAccountType": "Business", + "billingProfileDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000/billingProfiles/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileSpendingLimit": "Off", + "billingProfileStatus": "Active", + "costCenter": "1010", + "invoiceSectionDisplayName": "Operations", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000/billingProfiles/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "skuDescription": "Microsoft Azure Plan", + "skuId": "0001", + "subscriptionBillingStatus": "Active", + "subscriptionBillingStatusDetails": [ + { + "effectiveDate": "2023-01-01T17:32:28Z", + "reason": "Cancelled" + } + ], + "subscriptionBillingType": "Free", + "subscriptionWorkloadType": "Production" + }, + "type": "Microsoft.Billing/billingProperty" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMOSP.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMOSP.json new file mode 100644 index 000000000000..f0b6b65b9964 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMOSP.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingProperty/default", + "name": "default", + "properties": { + "billingAccountAgreementType": "MicrosoftOnlineServicesProgram", + "billingAccountDisplayName": "My Account", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000", + "billingAccountSoldToCountry": "US", + "billingAccountType": "Individual", + "subscriptionBillingType": "Free", + "subscriptionServiceUsageAddress": { + "addressLine1": "Address line 1", + "addressLine2": "Address line 2", + "city": "City", + "country": "US", + "firstName": "Jenny", + "lastName": "Doe", + "middleName": "Ann", + "postalCode": "12345", + "region": "State" + }, + "subscriptionWorkloadType": "Production" + }, + "type": "Microsoft.Billing/billingProperty" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMPA.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMPA.json new file mode 100644 index 000000000000..62788e6d64ae --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyGetMPA.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingProperty/default", + "name": "default", + "properties": { + "billingAccountAgreementType": "MicrosoftCustomerAgreement", + "billingAccountDisplayName": "My Account", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000", + "billingAccountSoldToCountry": "US", + "billingAccountType": "Business", + "billingProfileDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000/billingProfiles/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileSpendingLimit": "Off", + "billingProfileStatus": "Active", + "costCenter": "1010", + "customerDisplayName": "Operations", + "customerId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000/billingProfiles/billingProfiles/xxxx-xxxx-xxx-xxx/customers/yyyy-yyyy-yyy-yyy", + "skuDescription": "Microsoft Azure Plan", + "skuId": "0001", + "subscriptionBillingStatus": "Active", + "subscriptionBillingStatusDetails": [ + { + "effectiveDate": "2023-01-01T17:32:28Z", + "reason": "Cancelled" + } + ], + "subscriptionBillingType": "Free", + "subscriptionWorkloadType": "Production" + }, + "type": "Microsoft.Billing/billingProperty" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyPatchCostCenter.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyPatchCostCenter.json new file mode 100644 index 000000000000..6a4dbba742cf --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyPatchCostCenter.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "11111111-1111-1111-1111-111111111111", + "parameters": { + "properties": { + "costCenter": "1010" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingProperty/default", + "name": "default", + "properties": { + "billingAccountAgreementType": "MicrosoftCustomerAgreement", + "billingAccountDisplayName": "My Account", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000", + "billingAccountSoldToCountry": "US", + "billingAccountType": "Business", + "billingProfileDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000/billingProfiles/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileSpendingLimit": "Off", + "billingProfileStatus": "Active", + "costCenter": "1010", + "invoiceSectionDisplayName": "Operations", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000/billingProfiles/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "skuDescription": "Microsoft Azure Plan", + "skuId": "0001", + "subscriptionBillingStatus": "Active", + "subscriptionBillingStatusDetails": [ + { + "effectiveDate": "2023-01-01T17:32:28Z", + "reason": "Cancelled" + } + ], + "subscriptionBillingType": "Free", + "subscriptionWorkloadType": "Production" + }, + "type": "Microsoft.Billing/billingProperty" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyPatchSubscriptionServiceUsageAddress.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyPatchSubscriptionServiceUsageAddress.json new file mode 100644 index 000000000000..4dfbd8a24af2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingPropertyPatchSubscriptionServiceUsageAddress.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "11111111-1111-1111-1111-111111111111", + "parameters": { + "properties": { + "subscriptionServiceUsageAddress": { + "addressLine1": "Address line 1", + "addressLine2": "Address line 2", + "city": "City", + "country": "US", + "firstName": "Jenny", + "lastName": "Doe", + "middleName": "Ann", + "postalCode": "12345", + "region": "State" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Billing/billingProperty/default", + "name": "default", + "properties": { + "billingAccountAgreementType": "MicrosoftOnlineServicesProgram", + "billingAccountDisplayName": "My Account", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000", + "billingAccountSoldToCountry": "US", + "billingAccountType": "Individual", + "subscriptionBillingType": "Free", + "subscriptionServiceUsageAddress": { + "addressLine1": "Address line 1", + "addressLine2": "Address line 2", + "city": "City", + "country": "US", + "firstName": "Jenny", + "lastName": "Doe", + "middleName": "Ann", + "postalCode": "12345", + "region": "State" + }, + "subscriptionWorkloadType": "Production" + }, + "type": "Microsoft.Billing/billingProperty" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsCreateOrUpdate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsCreateOrUpdate.json new file mode 100644 index 000000000000..5d1d27f726e5 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsCreateOrUpdate.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingRequestName": "00000000-0000-0000-0000-000000000000", + "parameters": { + "properties": { + "additionalInformation": { + "RoleId": "40000000-aaaa-bbbb-cccc-200000000006" + }, + "decisionReason": "New team member", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "status": "Pending", + "type": "RoleAssignment" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingRequests/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "properties": { + "additionalInformation": { + "RoleId": "40000000-aaaa-bbbb-cccc-200000000006" + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Operations Billing", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2024-04-01T17:32:28Z", + "expirationDate": "2023-04-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "status": "Pending", + "type": "RoleAssignment", + "lastUpdatedBy": { + "upn": "admin@contoso.com" + }, + "lastUpdatedDate": "2024-04-01T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingRequests/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "properties": { + "additionalInformation": { + "RoleId": "40000000-aaaa-bbbb-cccc-200000000006" + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Operations Billing", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2024-04-01T17:32:28Z", + "expirationDate": "2023-04-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "status": "Pending", + "type": "RoleAssignment", + "lastUpdatedBy": { + "upn": "admin@contoso.com" + }, + "lastUpdatedDate": "2024-04-01T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsGet.json new file mode 100644 index 000000000000..21f587dd6555 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingRequestName": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingRequests/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "properties": { + "additionalInformation": { + "RoleId": "40000000-aaaa-bbbb-cccc-200000000006" + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Operations Billing", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2024-04-01T17:32:28Z", + "expirationDate": "2023-04-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "status": "Pending", + "type": "RoleAssignment", + "lastUpdatedBy": { + "upn": "admin@contoso.com" + }, + "lastUpdatedDate": "2024-04-01T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByBillingAccount.json new file mode 100644 index 000000000000..41fb8f24fb7e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByBillingAccount.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingRequests/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "properties": { + "additionalInformation": { + "RoleId": "40000000-aaaa-bbbb-cccc-200000000006" + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Operations Billing", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2024-04-01T17:32:28Z", + "expirationDate": "2023-04-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "status": "Pending", + "type": "RoleAssignment", + "lastUpdatedBy": { + "upn": "foo@contoso.com" + }, + "lastUpdatedDate": "2024-04-01T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + }, + { + "id": "/providers/Microsoft.Billing/billingRequests/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "reviewedBy": { + "upn": "admin@contosofinance.com" + }, + "reviewalDate": "2023-03-02T17:32:28Z", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2023-03-01T17:32:28Z", + "expirationDate": "2023-03-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/associatedTenants/100000000-0000-0000-0000-00000000", + "status": "Approved", + "type": "ProvisioningAccess", + "lastUpdatedBy": { + "upn": "admin@contosofinance.com" + }, + "lastUpdatedDate": "2023-03-02T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByBillingProfile.json new file mode 100644 index 000000000000..0976b2f22ccb --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByBillingProfile.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingRequests/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "properties": { + "additionalInformation": { + "RoleId": "40000000-aaaa-bbbb-cccc-200000000006" + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Operations Billing", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2024-04-01T17:32:28Z", + "expirationDate": "2023-04-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "status": "Pending", + "type": "RoleAssignment", + "lastUpdatedBy": { + "upn": "foo@contoso.com" + }, + "lastUpdatedDate": "2024-04-01T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByCustomer.json new file mode 100644 index 000000000000..1f54cb48019b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByCustomer.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingRequests/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "properties": { + "additionalInformation": { + "RoleId": "30000000-aaaa-bbbb-cccc-200000000003" + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Operations Billing", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2024-04-01T17:32:28Z", + "expirationDate": "2023-04-15T17:32:28Z", + "customerId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111", + "customerName": "11111111-1111-1111-1111-111111111111", + "customerDisplayName": "Customer 1", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111", + "status": "Pending", + "type": "RoleAssignment", + "lastUpdatedBy": { + "upn": "foo@contoso.com" + }, + "lastUpdatedDate": "2024-04-01T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByInvoiceSection.json new file mode 100644 index 000000000000..1c60059b5fb2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByInvoiceSection.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingRequests/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "properties": { + "additionalInformation": { + "RoleId": "30000000-aaaa-bbbb-cccc-200000000003" + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Operations Billing", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2024-04-01T17:32:28Z", + "expirationDate": "2023-04-15T17:32:28Z", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Department 1", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "status": "Pending", + "type": "RoleAssignment", + "lastUpdatedBy": { + "upn": "foo@contoso.com" + }, + "lastUpdatedDate": "2024-04-01T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByUser.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByUser.json new file mode 100644 index 000000000000..3881eb5c7aeb --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByUser.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2024-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingRequests/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "properties": { + "additionalInformation": { + "RoleId": "40000000-aaaa-bbbb-cccc-200000000006" + }, + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Contoso Operations Billing", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2024-04-01T17:32:28Z", + "expirationDate": "2023-04-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "status": "Pending", + "type": "RoleAssignment", + "lastUpdatedBy": { + "upn": "foo@contoso.com" + }, + "lastUpdatedDate": "2024-04-01T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + }, + { + "id": "/providers/Microsoft.Billing/billingRequests/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "reviewedBy": { + "upn": "admin@contosofinance.com" + }, + "reviewalDate": "2023-03-02T17:32:28Z", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2023-03-01T17:32:28Z", + "expirationDate": "2023-03-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/associatedTenants/100000000-0000-0000-0000-00000000", + "status": "Approved", + "type": "ProvisioningAccess", + "lastUpdatedBy": { + "upn": "admin@contosofinance.com" + }, + "lastUpdatedDate": "2023-03-02T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByUserWithFilter.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByUserWithFilter.json new file mode 100644 index 000000000000..7bb6a51fd268 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRequestsListByUserWithFilter.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "filter": "properties/status eq 'Approved'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingRequests/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "reviewedBy": { + "upn": "admin@contosofinance.com" + }, + "reviewalDate": "2023-03-02T17:32:28Z", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingAccountDisplayName": "Contoso", + "createdBy": { + "upn": "foo@contoso.com" + }, + "creationDate": "2023-03-01T17:32:28Z", + "expirationDate": "2023-03-15T17:32:28Z", + "requestScope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/associatedTenants/100000000-0000-0000-0000-00000000", + "status": "Approved", + "type": "ProvisioningAccess", + "lastUpdatedBy": { + "upn": "admin@contosofinance.com" + }, + "lastUpdatedDate": "2023-03-02T17:32:28Z" + }, + "type": "Microsoft.Billing/billingRequests" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByBillingAccount.json new file mode 100644 index 000000000000..9a8c4ab25f2c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByBillingAccount.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "parameters": { + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleDefinitions/10000000-aaaa-bbbb-cccc-100000000000", + "userEmailAddress": "john@contoso.com" + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000", + "name": "10000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "47309529-17e6-4104-b9e8-39f62fa1e5ed", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleDefinitions/10000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleAssignments" + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/operationResults/createBillingRoleAssignment_10000000-0000-0000-0000-000000000001?api-version=2024-04-01", + "retry-after": "5" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByBillingProfile.json new file mode 100644 index 000000000000..cb154faddd73 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByBillingProfile.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "parameters": { + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/billingRoleDefinitions/10000000-aaaa-bbbb-cccc-100000000000", + "userEmailAddress": "john@contoso.com" + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000", + "name": "10000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "47309529-17e6-4104-b9e8-39f62fa1e5ed", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleDefinitions/10000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleAssignments" + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/operationResults/createBillingRoleAssignment_10000000-0000-0000-0000-000000000001?api-version=2024-04-01", + "retry-after": "5" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByCustomer.json new file mode 100644 index 000000000000..29a38b1ba244 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByCustomer.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "customerName": "703ab484-dda2-4402-827b-a74513b61e2d", + "parameters": { + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfileName/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "userEmailAddress": "john@contoso.com" + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfileName/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleAssignments/30000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000", + "name": "30000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "47309529-17e6-4104-b9e8-39f62fa1e5ed", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfileName/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfileName/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleAssignments" + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/customers/703ab484-dda2-4402-827b-a74513b61e2d/operationResults/createBillingRoleAssignment_30000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000?api-version=2024-04-01", + "retry-after": "5" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByInvoiceSection.json new file mode 100644 index 000000000000..0b2033585f15 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateByInvoiceSection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "invoiceSectionName": "xxxx-xxxx-xxx-xxx", + "parameters": { + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/10000000-aaaa-bbbb-cccc-100000000000", + "userEmailAddress": "john@contoso.com" + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000", + "name": "10000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "47309529-17e6-4104-b9e8-39f62fa1e5ed", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/10000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleAssignments" + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/xxxx-xxxx-xxx-xxx/operationResults/createBillingRoleAssignment_10000000-0000-0000-0000-000000000001?api-version=2024-04-01", + "retry-after": "5" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByBillingAccount.json new file mode 100644 index 000000000000..9071b35ccbd5 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByBillingAccount.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "7898901", + "billingRoleAssignmentName": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "parameters": { + "properties": { + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "userEmailAddress": "john@contoso.com" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/7898901/billingRoleAssignments/9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "name": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "60d97094-2be4-46cc-a4fe-3633021a25b9", + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "7ca289b9-c32d-4f01-8566-7ff93261d76f", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "scope": "/providers/Microsoft.Billing/billingAccounts/7898901" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleAssignments" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/7898901/billingRoleAssignments/9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "name": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "60d97094-2be4-46cc-a4fe-3633021a25b9", + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "7ca289b9-c32d-4f01-8566-7ff93261d76f", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "scope": "/providers/Microsoft.Billing/billingAccounts/7898901" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByDepartment.json new file mode 100644 index 000000000000..170eb67e3a3b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByDepartment.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "7898901", + "departmentName": "12345", + "billingRoleAssignmentName": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "parameters": { + "properties": { + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/12345/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "userEmailAddress": "john@contoso.com" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/12345/billingRoleAssignments/9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "name": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "60d97094-2be4-46cc-a4fe-3633021a25b9", + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "7ca289b9-c32d-4f01-8566-7ff93261d76f", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/12345/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "scope": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/12345" + }, + "type": "Microsoft.Billing/billingAccounts/departments/billingRoleAssignments" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/12345/billingRoleAssignments/9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "name": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "60d97094-2be4-46cc-a4fe-3633021a25b9", + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "7ca289b9-c32d-4f01-8566-7ff93261d76f", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/12345/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "scope": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/12345" + }, + "type": "Microsoft.Billing/billingAccounts/departments/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByEnrollmentAccount.json new file mode 100644 index 000000000000..16ff9d7c3875 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentCreateOrUpdateByEnrollmentAccount.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "7898901", + "enrollmentAccountName": "123456", + "billingRoleAssignmentName": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "parameters": { + "properties": { + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/123456/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "userEmailAddress": "john@contoso.com" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/123456/billingRoleAssignments/9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "name": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "60d97094-2be4-46cc-a4fe-3633021a25b9", + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "7ca289b9-c32d-4f01-8566-7ff93261d76f", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/123456/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "scope": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/123456" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingRoleAssignments" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/123456/billingRoleAssignments/9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "name": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "60d97094-2be4-46cc-a4fe-3633021a25b9", + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "7ca289b9-c32d-4f01-8566-7ff93261d76f", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/123456/billingRoleDefinitions/9f1983cb-2574-400c-87e9-34cf8e2280db", + "scope": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/123456" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByBillingAccount.json new file mode 100644 index 000000000000..1196d51833d1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByBillingAccount.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingRoleAssignmentName": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByBillingProfile.json new file mode 100644 index 000000000000..de71acb39b6a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByBillingProfile.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "billingRoleAssignmentName": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByCustomer.json new file mode 100644 index 000000000000..bddb5aaefb63 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByCustomer.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "customerName": "703ab484-dda2-4402-827b-a74513b61e2d", + "billingRoleAssignmentName": "30000000-aaaa-bbbb-cccc-100000000000_00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByDepartment.json new file mode 100644 index 000000000000..ea93fc05db97 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByDepartment.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "8608480", + "departmentName": "123456", + "billingRoleAssignmentName": "9dfd08c2-62a3-4d47-85bd-1cdba1408402" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByEnrollmentAccount.json new file mode 100644 index 000000000000..636fc3676094 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByEnrollmentAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "8608480", + "enrollmentAccountName": "123456", + "billingRoleAssignmentName": "9dfd08c2-62a3-4d47-85bd-1cdba1408402" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByInvoiceSection.json new file mode 100644 index 000000000000..5e0e44a84c39 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentDeleteByInvoiceSection.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "invoiceSectionName": "xxxx-xxxx-xxx-xxx", + "billingRoleAssignmentName": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByBillingAccount.json new file mode 100644 index 000000000000..7118380548ea --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByBillingAccount.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingRoleAssignmentName": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-01-04T22:39:34.2606750Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleDefinitions/00000000-0000-0000-0000-000000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByBillingProfile.json new file mode 100644 index 000000000000..b7f629fcf219 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByBillingProfile.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "billingRoleAssignmentName": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-01-04T22:39:34.2606750Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "46b831ec-42b2-4f1a-8b54-3fd5ff9d6aa1", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/00000000-0000-0000-0000-000000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByCustomer.json new file mode 100644 index 000000000000..2ef6468dab0f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByCustomer.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "703ab484-dda2-4402-827b-a74513b61e2d", + "billingRoleAssignmentName": "30000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleAssignments/30000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "30000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-01-04T22:39:34.2606750Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByDepartment.json new file mode 100644 index 000000000000..5b9c2cbe3505 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByDepartment.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "7898901", + "departmentName": "225314", + "billingRoleAssignmentName": "9dfd08c2-62a3-4d47-85bd-1cdba1408402" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/225314/billingRoleAssignments/9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "name": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByUserEmailAddress": "test@billtest900006.onmicrosoft.com", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/225314/billingRoleDefinitions/c15c22c0-9faf-424c-9b7e-bd91c06a240b", + "scope": "/providers/Microsoft.Billing/billingAccounts/7898901/departments/225314", + "userAuthenticationType": "Organization", + "userEmailAddress": "a_owner@billtest900006.onmicrosoft.com" + }, + "type": "Microsoft.Billing/billingAccounts/departments/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByEnrollmentAccount.json new file mode 100644 index 000000000000..77fa64ec2eac --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByEnrollmentAccount.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "7898901", + "enrollmentAccountName": "225314", + "billingRoleAssignmentName": "9dfd08c2-62a3-4d47-85bd-1cdba1408402" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/225314/billingRoleAssignments/9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "name": "9dfd08c2-62a3-4d47-85bd-1cdba1408402", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByUserEmailAddress": "test@billtest900006.onmicrosoft.com", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/225314/billingRoleDefinitions/c15c22c0-9faf-424c-9b7e-bd91c06a240b", + "scope": "/providers/Microsoft.Billing/billingAccounts/7898901/enrollmentAccounts/225314", + "userAuthenticationType": "Organization", + "userEmailAddress": "a_owner@billtest900006.onmicrosoft.com" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByInvoiceSection.json new file mode 100644 index 000000000000..8aca100e4965 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentGetByInvoiceSection.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "invoiceSectionName": "xxxx-xxxx-xxx-xxx", + "billingRoleAssignmentName": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "46b831ec-42b2-4f1a-8b54-3fd5ff9d6aa1", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleAssignments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByBillingAccount.json new file mode 100644 index 000000000000..9d6a9a865dc4 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByBillingAccount.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleDefinitions/00000000-0000-0000-0000-000000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleDefinitions/00000000-0000-0000-0000-000000000001", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleAssignments" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByBillingProfile.json new file mode 100644 index 000000000000..59e87272e0d2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByBillingProfile.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/00000000-0000-0000-0000-000000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/00000000-0000-0000-0000-000000000001", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleAssignments" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByCustomer.json new file mode 100644 index 000000000000..3dd9bdfd2c60 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByCustomer.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "customerName": "703ab484-dda2-4402-827b-a74513b61e2d" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleAssignments/30000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "30000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleAssignments/30000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "30000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/customers/703ab484-dda2-4402-827b-a74513b61e2d", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleAssignments" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByDepartment.json new file mode 100644 index 000000000000..2b11ec60bfaf --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByDepartment.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "departmentName": "12345" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/departments/12345/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/departments/12345/billingRoleDefinitions/00000000-0000-0000-0000-000000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/departments/12345", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/departments/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/departments/12345/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "\"/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/departments/12345/billingRoleDefinitions/00000000-0000-0000-0000-000000000001", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/departments/12345", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/departments/billingRoleAssignments" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByEnrollmentAccount.json new file mode 100644 index 000000000000..da059bfb8625 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByEnrollmentAccount.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6100092", + "enrollmentAccountName": "123456" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/6100092/enrollmentAccounts/123456/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/6100092/enrollmentAccounts/123456/billingRoleDefinitions/50000000-0000-0000-0000-000000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/6100092/enrollmentAccounts/123456", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/6100092/enrollmentAccounts/123456/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/6100092/enrollmentAccounts/123456/billingRoleDefinitions/50000000-0000-0000-0000-000000000001", + "scope": "/providers/Microsoft.Billing/billingAccounts/6100092/enrollmentAccounts/123456", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingRoleAssignments" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByInvoiceSection.json new file mode 100644 index 000000000000..8946b833b4fc --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleAssignmentListByInvoiceSection.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "invoiceSectionName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000002", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000001", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleAssignments" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByBillingAccount.json new file mode 100644 index 000000000000..803b14359713 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByBillingAccount.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "roleDefinitionName": "50000000-aaaa-bbbb-cccc-100000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000000", + "name": "50000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "permissions": [ + { + "actions": [ + "50000000-aaaa-bbbb-cccc-200000000000", + "50000000-aaaa-bbbb-cccc-200000000001", + "50000000-aaaa-bbbb-cccc-200000000002", + "50000000-aaaa-bbbb-cccc-200000000003", + "50000000-aaaa-bbbb-cccc-200000000004", + "50000000-aaaa-bbbb-cccc-200000000006", + "50000000-aaaa-bbbb-cccc-200000000007", + "50000000-aaaa-bbbb-cccc-200000000008", + "10000000-aaaa-bbbb-cccc-200000000001", + "10000000-aaaa-bbbb-cccc-200000000002", + "10000000-aaaa-bbbb-cccc-200000000003", + "10000000-aaaa-bbbb-cccc-200000000006", + "10000000-aaaa-bbbb-cccc-200000000007", + "50000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018", + "40000000-aaaa-bbbb-cccc-200000000000", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000012", + "40000000-aaaa-bbbb-cccc-200000000013", + "40000000-aaaa-bbbb-cccc-200000000004", + "40000000-aaaa-bbbb-cccc-200000000001", + "40000000-aaaa-bbbb-cccc-200000000005", + "40000000-aaaa-bbbb-cccc-200000000002", + "40000000-aaaa-bbbb-cccc-200000000003", + "40000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000016" + ] + } + ], + "roleName": "Billing account owner" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleDefinitions" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByBillingProfile.json new file mode 100644 index 000000000000..b8e1eb08b3ba --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByBillingProfile.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "roleDefinitionName": "40000000-aaaa-bbbb-cccc-100000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/40000000-aaaa-bbbb-cccc-100000000000", + "name": "40000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "description": "The Owner role gives the user all permissions including access management rights to the billing profile.", + "permissions": [ + { + "actions": [ + "40000000-aaaa-bbbb-cccc-200000000000", + "40000000-aaaa-bbbb-cccc-200000000001", + "40000000-aaaa-bbbb-cccc-200000000002", + "40000000-aaaa-bbbb-cccc-200000000003", + "40000000-aaaa-bbbb-cccc-200000000004", + "40000000-aaaa-bbbb-cccc-200000000005", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000011", + "40000000-aaaa-bbbb-cccc-200000000012", + "40000000-aaaa-bbbb-cccc-200000000013" + ] + } + ], + "roleName": "Billing profile owner" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleDefinitions" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByCustomer.json new file mode 100644 index 000000000000..6ae32186004a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByCustomer.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111", + "roleDefinitionName": "30000000-aaaa-bbbb-cccc-100000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "name": "30000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "description": "The Owner role gives the user all permissions including access management rights to the customer.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000016", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018" + ], + "notActions": [] + } + ], + "roleName": "Customer owner" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleDefinitions" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByDepartment.json new file mode 100644 index 000000000000..6ed579f03f56 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByDepartment.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "123456", + "departmentName": "7368531", + "roleDefinitionName": "50000000-aaaa-bbbb-cccc-100000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/departments/7368531/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000000", + "name": "50000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "permissions": [ + { + "actions": [ + "Microsoft.Billing/billingAccounts/departments/read", + "Microsoft.Billing/billingAccounts/departments/write", + "Microsoft.Billing/billingAccounts/departments/action", + "Microsoft.Billing/billingAccounts/departments/delete", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/action", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/delete" + ] + } + ], + "roleName": "Department Admin" + }, + "type": "Microsoft.Billing/billingAccounts/departments/billingRoleDefinitions" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByEnrollmentAccount.json new file mode 100644 index 000000000000..e02092937c61 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByEnrollmentAccount.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "123456", + "enrollmentAccountName": "4568789", + "roleDefinitionName": "50000000-aaaa-bbbb-cccc-100000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/enrollmentAccounts/4568789/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000000", + "name": "50000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "permissions": [ + { + "actions": [ + "Microsoft.Billing/billingAccounts/enrollmentAccounts/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/action", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/delete", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/action" + ] + } + ], + "roleName": "Account Owner" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingRoleDefinitions" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByInvoiceSection.json new file mode 100644 index 000000000000..e0f495cee1f9 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionGetByInvoiceSection.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "roleDefinitionName": "30000000-aaaa-bbbb-cccc-100000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "name": "30000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "description": "The Owner role gives the user all permissions including access management rights to the invoice section.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000016", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018" + ] + } + ], + "roleName": "Invoice section owner" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleDefinitions" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByBillingAccount.json new file mode 100644 index 000000000000..e4a4e49d4ccb --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByBillingAccount.json @@ -0,0 +1,205 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000000", + "name": "50000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "permissions": [ + { + "actions": [ + "50000000-aaaa-bbbb-cccc-200000000000", + "50000000-aaaa-bbbb-cccc-200000000001", + "50000000-aaaa-bbbb-cccc-200000000002", + "50000000-aaaa-bbbb-cccc-200000000003", + "50000000-aaaa-bbbb-cccc-200000000004", + "50000000-aaaa-bbbb-cccc-200000000006", + "50000000-aaaa-bbbb-cccc-200000000007", + "50000000-aaaa-bbbb-cccc-200000000008", + "10000000-aaaa-bbbb-cccc-200000000001", + "10000000-aaaa-bbbb-cccc-200000000002", + "10000000-aaaa-bbbb-cccc-200000000003", + "10000000-aaaa-bbbb-cccc-200000000006", + "10000000-aaaa-bbbb-cccc-200000000007", + "50000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018", + "40000000-aaaa-bbbb-cccc-200000000000", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000012", + "40000000-aaaa-bbbb-cccc-200000000013", + "40000000-aaaa-bbbb-cccc-200000000004", + "40000000-aaaa-bbbb-cccc-200000000001", + "40000000-aaaa-bbbb-cccc-200000000005", + "40000000-aaaa-bbbb-cccc-200000000002", + "40000000-aaaa-bbbb-cccc-200000000003", + "40000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000016" + ] + } + ], + "roleName": "Billing account owner" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000001", + "name": "50000000-aaaa-bbbb-cccc-100000000001", + "properties": { + "description": "The Contributor role gives the user all permissions except access management on the organization.", + "permissions": [ + { + "actions": [ + "50000000-aaaa-bbbb-cccc-200000000001", + "50000000-aaaa-bbbb-cccc-200000000002", + "50000000-aaaa-bbbb-cccc-200000000003", + "50000000-aaaa-bbbb-cccc-200000000004", + "50000000-aaaa-bbbb-cccc-200000000006", + "50000000-aaaa-bbbb-cccc-200000000007", + "50000000-aaaa-bbbb-cccc-200000000008", + "10000000-aaaa-bbbb-cccc-200000000001", + "10000000-aaaa-bbbb-cccc-200000000002", + "10000000-aaaa-bbbb-cccc-200000000003", + "10000000-aaaa-bbbb-cccc-200000000006", + "10000000-aaaa-bbbb-cccc-200000000007", + "50000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000012", + "40000000-aaaa-bbbb-cccc-200000000013", + "40000000-aaaa-bbbb-cccc-200000000004", + "40000000-aaaa-bbbb-cccc-200000000001", + "40000000-aaaa-bbbb-cccc-200000000005", + "40000000-aaaa-bbbb-cccc-200000000002", + "40000000-aaaa-bbbb-cccc-200000000003", + "40000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000016" + ] + } + ], + "roleName": "Billing account contributor" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000002", + "name": "50000000-aaaa-bbbb-cccc-100000000002", + "properties": { + "description": "The Reader role gives the user read permissions to an organization.", + "permissions": [ + { + "actions": [ + "50000000-aaaa-bbbb-cccc-200000000001", + "50000000-aaaa-bbbb-cccc-200000000006", + "50000000-aaaa-bbbb-cccc-200000000007", + "10000000-aaaa-bbbb-cccc-200000000003", + "50000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000017", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000012" + ] + } + ], + "roleName": "Billing account reader" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000002", + "name": "50000000-aaaa-bbbb-cccc-100000000002", + "properties": { + "description": "The Reader role gives the user read permissions to an organization.", + "permissions": [ + { + "actions": [ + "50000000-aaaa-bbbb-cccc-200000000001", + "50000000-aaaa-bbbb-cccc-200000000006", + "50000000-aaaa-bbbb-cccc-200000000007", + "10000000-aaaa-bbbb-cccc-200000000003", + "50000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000017", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000012" + ] + } + ], + "roleName": "Billing account reader" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000003", + "name": "50000000-aaaa-bbbb-cccc-100000000003", + "properties": { + "description": "The Purchaser role gives the user permissions to make purchases by creating new Projects and Billing Groups in an organization.", + "permissions": [ + { + "actions": [ + "10000000-aaaa-bbbb-cccc-200000000006", + "10000000-aaaa-bbbb-cccc-200000000007", + "50000000-aaaa-bbbb-cccc-200000000001", + "50000000-aaaa-bbbb-cccc-200000000006" + ] + } + ], + "roleName": "Basic Purchaser" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleDefinitions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByBillingProfile.json new file mode 100644 index 000000000000..9bc8534a7287 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByBillingProfile.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/40000000-aaaa-bbbb-cccc-100000000000", + "name": "40000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "description": "The Owner role gives the user all permissions including access management rights to the billing profile.", + "permissions": [ + { + "actions": [ + "40000000-aaaa-bbbb-cccc-200000000000", + "40000000-aaaa-bbbb-cccc-200000000001", + "40000000-aaaa-bbbb-cccc-200000000002", + "40000000-aaaa-bbbb-cccc-200000000003", + "40000000-aaaa-bbbb-cccc-200000000004", + "40000000-aaaa-bbbb-cccc-200000000005", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000011", + "40000000-aaaa-bbbb-cccc-200000000012", + "40000000-aaaa-bbbb-cccc-200000000013" + ] + } + ], + "roleName": "Billing profile owner" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/40000000-aaaa-bbbb-cccc-100000000001", + "name": "40000000-aaaa-bbbb-cccc-100000000001", + "properties": { + "description": "The Contributor role gives the user all permissions except access management rights to the billing profile.", + "permissions": [ + { + "actions": [ + "40000000-aaaa-bbbb-cccc-200000000001", + "40000000-aaaa-bbbb-cccc-200000000002", + "40000000-aaaa-bbbb-cccc-200000000003", + "40000000-aaaa-bbbb-cccc-200000000004", + "40000000-aaaa-bbbb-cccc-200000000005", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000011", + "40000000-aaaa-bbbb-cccc-200000000012", + "40000000-aaaa-bbbb-cccc-200000000013" + ] + } + ], + "roleName": "Billing profile contributor" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/40000000-aaaa-bbbb-cccc-100000000002", + "name": "40000000-aaaa-bbbb-cccc-100000000002", + "properties": { + "description": "The Reader role gives the user read only access to the billing profile.", + "permissions": [ + { + "actions": [ + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000012" + ] + } + ], + "roleName": "Billing profile reader" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/40000000-aaaa-bbbb-cccc-100000000004", + "name": "40000000-aaaa-bbbb-cccc-100000000004", + "properties": { + "description": "The Invoice Manager role gives the user the ability to view and manage invoices.", + "permissions": [ + { + "actions": [ + "40000000-aaaa-bbbb-cccc-200000000007", + "40000000-aaaa-bbbb-cccc-200000000006", + "40000000-aaaa-bbbb-cccc-200000000011", + "40000000-aaaa-bbbb-cccc-200000000008", + "40000000-aaaa-bbbb-cccc-200000000012", + "40000000-aaaa-bbbb-cccc-200000000013" + ] + } + ], + "roleName": "Invoice manager" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleDefinitions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByCustomer.json new file mode 100644 index 000000000000..22eb385cd955 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByCustomer.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "name": "30000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "description": "The Owner role gives the user all permissions including access management rights to the customer.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000016", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018" + ], + "notActions": [] + } + ], + "roleName": "Customer owner" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000001", + "name": "30000000-aaaa-bbbb-cccc-100000000001", + "properties": { + "description": "The Contributor role gives the user all permissions except access management rights to the customer.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000016", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018" + ], + "notActions": [] + } + ], + "roleName": "Customer contributor" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000002", + "name": "30000000-aaaa-bbbb-cccc-100000000002", + "properties": { + "description": "The reader role gives the user read only access to the customer.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000017" + ], + "notActions": [] + } + ], + "roleName": "Customer reader" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleDefinitions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByDepartment.json new file mode 100644 index 000000000000..94d302ecf033 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByDepartment.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "123456", + "departmentName": "7368531" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/departments/7368531/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000000", + "name": "50000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "permissions": [ + { + "actions": [ + "Microsoft.Billing/billingAccounts/departments/read", + "Microsoft.Billing/billingAccounts/departments/write", + "Microsoft.Billing/billingAccounts/departments/action", + "Microsoft.Billing/billingAccounts/departments/delete", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/action", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/delete", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/read" + ] + } + ], + "roleName": "Department Admin" + }, + "type": "Microsoft.Billing/billingAccounts/departments/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/departments/7368531/billingRoleDefinitions/50000000-aaaa-bbbb-cccc-100000000001", + "name": "50000000-aaaa-bbbb-cccc-100000000001", + "properties": { + "permissions": [ + { + "actions": [ + "Microsoft.Billing/billingAccounts/departments/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/read" + ] + } + ], + "roleName": "Department Reader" + }, + "type": "Microsoft.Billing/billingAccounts/departments/billingRoleDefinitions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByEnrollmentAccount.json new file mode 100644 index 000000000000..6bc509e9defc --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByEnrollmentAccount.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "123456", + "enrollmentAccountName": "4568789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/123456/enrollmentAccounts/4568789/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "name": "30000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "description": "The account owner role gives the user all permissions including access management rights to an accounts.", + "permissions": [ + { + "actions": [ + "Microsoft.Billing/billingAccounts/enrollmentAccounts/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/action", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/delete", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/read", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/write", + "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingSubscriptions/action" + ], + "notActions": [] + } + ], + "roleName": "Account Owner" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts/billingRoleDefinitions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByInvoiceSection.json new file mode 100644 index 000000000000..5ab131564f76 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingRoleDefinitionListByInvoiceSection.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "name": "30000000-aaaa-bbbb-cccc-100000000000", + "properties": { + "description": "The Owner role gives the user all permissions including access management rights to the invoice section.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000000", + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000016", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018" + ] + } + ], + "roleName": "Invoice section owner" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000001", + "name": "30000000-aaaa-bbbb-cccc-100000000001", + "properties": { + "description": "The Contributor role gives the user all permissions except access management rights to the invoice section.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000003", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000005", + "30000000-aaaa-bbbb-cccc-200000000006", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000008", + "30000000-aaaa-bbbb-cccc-200000000009", + "30000000-aaaa-bbbb-cccc-200000000010", + "30000000-aaaa-bbbb-cccc-200000000011", + "30000000-aaaa-bbbb-cccc-200000000012", + "30000000-aaaa-bbbb-cccc-200000000013", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000016", + "30000000-aaaa-bbbb-cccc-200000000017", + "30000000-aaaa-bbbb-cccc-200000000018" + ] + } + ], + "roleName": "Invoice section contributor" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000002", + "name": "30000000-aaaa-bbbb-cccc-100000000002", + "properties": { + "description": "The reader role gives the user read only access to the invoice section.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000007", + "30000000-aaaa-bbbb-cccc-200000000004", + "30000000-aaaa-bbbb-cccc-200000000015", + "30000000-aaaa-bbbb-cccc-200000000017" + ] + } + ], + "roleName": "Invoice section reader" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleDefinitions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000006", + "name": "30000000-aaaa-bbbb-cccc-100000000006", + "properties": { + "description": "The Azure subscription creator role gives the user the ability to create an Azure subscription for the invoice section.", + "permissions": [ + { + "actions": [ + "30000000-aaaa-bbbb-cccc-200000000001", + "30000000-aaaa-bbbb-cccc-200000000013" + ] + } + ], + "roleName": "Azure subscription creator" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleDefinitions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasCreateOrUpdate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasCreateOrUpdate.json new file mode 100644 index 000000000000..157ea2b16c06 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasCreateOrUpdate.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "aliasName": "c356b7c7-7545-4686-b843-c1a49cf853fc", + "parameters": { + "properties": { + "billingFrequency": "P1M", + "displayName": "Subscription 3", + "quantity": 1, + "skuId": "0001", + "termDuration": "P1M" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptionAliases/c356b7c7-7545-4686-b843-c1a49cf853fc", + "name": "c356b7c7-7545-4686-b843-c1a49cf853fc", + "properties": { + "billingSubscriptionId": "11111111-1111-1111-1111-111111111111", + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Billing Subscription Display Name", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptionAliases", + "systemData": { + "createdAt": "2023-01-05T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-25T22:39:34.2606750Z" + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptionAliases/c356b7c7-7545-4686-b843-c1a49cf853fc", + "name": "c356b7c7-7545-4686-b843-c1a49cf853fc", + "properties": { + "billingSubscriptionId": "11111111-1111-1111-1111-111111111111", + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Billing Subscription Display Name", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptionAliases", + "systemData": { + "createdAt": "2023-01-05T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-25T22:39:34.2606750Z" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/putBillingSubscriptionAlias_c356b7c7-7545-4686-b843-c1a49cf853fc:11111111-1111-1111-1111-111111111111:22222222-2222-2222-2222-222222222222?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasGet.json new file mode 100644 index 000000000000..b5e4519c85be --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "aliasName": "c356b7c7-7545-4686-b843-c1a49cf853fc" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptionAliases/c356b7c7-7545-4686-b843-c1a49cf853fc", + "name": "c356b7c7-7545-4686-b843-c1a49cf853fc", + "properties": { + "billingSubscriptionId": "11111111-1111-1111-1111-111111111111", + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Billing Subscription Display Name", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptionAliases", + "systemData": { + "createdAt": "2023-01-05T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-25T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasList.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasList.json new file mode 100644 index 000000000000..82cb718d5786 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionAliasList.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptionAliases/90000000-0000-0000-0000-000000000000", + "name": "90000000-0000-0000-0000-000000000000", + "properties": { + "billingSubscriptionId": "11111111-1111-1111-1111-111111111111", + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "My subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-04T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptionAliases/11111111-1111-1111-1111-111111111111", + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptionAliases", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptionAliases/90000000-0000-0000-0000-000000000001", + "name": "90000000-0000-0000-0000-000000000001", + "properties": { + "billingSubscriptionId": "22222222-2222-2222-2222-222222222222", + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Test subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "Software", + "productType": "Software Product Type", + "productTypeId": "EFG456", + "purchaseDate": "2023-01-06T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptionAliases/22222222-2222-2222-2222-222222222222", + "termDuration": "P1M", + "termStartDate": "2023-01-07T22:39:34.2606750Z", + "termEndDate": "2023-02-07T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptionAliases", + "systemData": { + "createdAt": "2023-01-06T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-07T22:39:34.2606750Z" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptionAliases/90000000-0000-0000-0000-000000000002", + "name": "90000000-0000-0000-0000-000000000002", + "properties": { + "billingSubscriptionId": "33333333-3333-3333-3333-333333333333", + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Dev subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "ReservationOrder", + "productType": "Reservation Product Type", + "productTypeId": "JKL789", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "resourceUri": "/providers/Microsoft.Capacity/reservationOrders/33333333-3333-3333-3333-333333333333", + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Suspended", + "suspensionReasons": [ + "Cancelled" + ], + "suspensionReasonDetails": [ + { + "effectiveDate": "2023-01-15T22:39:34.2606750Z", + "reason": "Cancelled" + } + ] + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptionAliases", + "systemData": { + "createdAt": "2023-01-05T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-25T22:39:34.2606750Z" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionGetByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionGetByBillingProfile.json new file mode 100644 index 000000000000..3c66a75b44ed --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionGetByBillingProfile.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "pcn.94077792", + "billingProfileName": "6478903", + "billingSubscriptionName": "6b96d3f2-9008-4a9d-912f-f87744185aa3" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/pcn.94077792/billingProfiles/6478903/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/pcn.94077792/billingProfiles/6478903", + "billingProfileName": "47268432", + "displayName": "My Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/6564892/billingProfiles/11000000-0000-0000-0000-000000000000/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "quantity": 50, + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "systemOverrides": { + "cancellation": "Allowed", + "cancellationAllowedEndDate": "2023-01-05T22:39:34.2606750Z" + }, + "provisioningTenantId": "7d62dbd1-1348-4496-b2f8-df6948c103ee", + "status": "Active", + "subscriptionId": "6b96d3f2-9008-4a9d-912f-f87744185aa3" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingSubscriptions" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionMove.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionMove.json new file mode 100644 index 000000000000..709de40b4567 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionMove.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingSubscriptionName": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "parameters": { + "destinationInvoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB" + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "consumptionCostCenter": "ABC1234", + "displayName": "My Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Plan", + "status": "Active", + "subscriptionId": "6b96d3f2-9008-4a9d-912f-f87744185aa3" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/operationResults/moveBillingSubscription_11000000-0000-0000-0000-000000000000:22000000-0000-0000-0000-000000000000:6b96d3f2-9008-4a9d-912f-f87744185aa3:44000000-0000-0000-0000-000000000055:10000000-0000-0000-0000-000000000001?api-version=2020-12-15-privatepreview", + "Retry-After": "30" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionValidateMoveFailure.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionValidateMoveFailure.json new file mode 100644 index 000000000000..2f6bbf83fe3f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionValidateMoveFailure.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "invoiceSectionName": "Q7GV-UUVA-PJA-TGB", + "billingSubscriptionName": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "parameters": { + "destinationInvoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB" + } + }, + "responses": { + "200": { + "body": { + "errorDetails": { + "code": "SubscriptionNotActive", + "message": "Invoice Sections can only be changed for active subscriptions." + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionValidateMoveSuccess.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionValidateMoveSuccess.json new file mode 100644 index 000000000000..6be9d3debae2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionValidateMoveSuccess.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "invoiceSectionName": "Q7GV-UUVA-PJA-TGB", + "billingSubscriptionName": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "parameters": { + "destinationInvoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB" + } + }, + "responses": { + "200": { + "body": { + "isMoveEligible": true + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsCancel.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsCancel.json new file mode 100644 index 000000000000..eb572f74a4f7 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsCancel.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingSubscriptionName": "11111111-1111-1111-1111-111111111111", + "parameters": { + "cancellationReason": "Compromise", + "customerId": "11111111-1111-1111-1111-111111111111" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/cancelBillingSubscription_11111111-1111-1111-1111-111111111111:22222222-2222-2222-2222-222222222222?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsDelete.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsDelete.json new file mode 100644 index 000000000000..2ef935ea444e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingSubscriptionName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "204": {}, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/cancelBillingSubscription_11111111-1111-1111-1111-111111111111:22222222-2222-2222-2222-222222222222?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsGet.json new file mode 100644 index 000000000000..69239001d314 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingSubscriptionName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/90000000-0000-0000-0000-000000000000", + "name": "90000000-0000-0000-0000-000000000000", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "My subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-04T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/90000000-0000-0000-0000-000000000000", + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingAccount.json new file mode 100644 index 000000000000..cf5fa5ea5f24 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingAccount.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "excludeCharges": false, + "includeDeleted": false, + "includeTenantSubscriptions": false + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/90000000-0000-0000-0000-000000000000", + "name": "90000000-0000-0000-0000-000000000000", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "My subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-04T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/90000000-0000-0000-0000-000000000000", + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/90000000-0000-0000-0000-000000000001", + "name": "90000000-0000-0000-0000-000000000001", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Test subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "Software", + "productType": "Software Product Type", + "productTypeId": "EFG456", + "purchaseDate": "2023-01-06T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/90000000-0000-0000-0000-000000000001", + "termDuration": "P1M", + "termStartDate": "2023-01-07T22:39:34.2606750Z", + "termEndDate": "2023-02-07T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions", + "systemData": { + "createdAt": "2023-01-06T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-07T22:39:34.2606750Z" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/90000000-0000-0000-0000-000000000002", + "name": "90000000-0000-0000-0000-000000000002", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Dev subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "ReservationOrder", + "productType": "Reservation Product Type", + "productTypeId": "JKL789", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "resourceUri": "/providers/Microsoft.Capacity/reservationOrders/90000000-0000-0000-0000-000000000002", + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Suspended", + "suspensionReasons": [ + "Cancelled" + ], + "suspensionReasonDetails": [ + { + "effectiveDate": "2023-01-15T22:39:34.2606750Z", + "reason": "Cancelled" + } + ] + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions", + "systemData": { + "createdAt": "2023-01-05T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-25T22:39:34.2606750Z" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingProfileEA.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingProfileEA.json new file mode 100644 index 000000000000..d84a83a85a99 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingProfileEA.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "pcn.94077792", + "billingProfileName": "6478903" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/pcn.94077792/billingProfiles/6478903/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/pcn.94077792/billingProfiles/6478903", + "billingProfileName": "47268432", + "displayName": "My Subscription", + "enrollmentAccountId": "172988", + "enrollmentAccountDisplayName": "billtest332211@outlook.com", + "status": "Active", + "subscriptionId": "6b96d3f2-9008-4a9d-912f-f87744185aa3" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingSubscriptions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingProfileMCA.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingProfileMCA.json new file mode 100644 index 000000000000..9d937156f3fe --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByBillingProfileMCA.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "My Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "status": "Active", + "subscriptionId": "6b96d3f2-9008-4a9d-912f-f87744185aa3" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "name": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Test Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "status": "Active", + "subscriptionId": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/90D31600-D46D-4084-84C6-1235CDAFFB56", + "name": "90D31600-D46D-4084-84C6-1235CDAFFB56", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Dev Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/90D31600-D46D-4084-84C6-1235CDAFFB56", + "status": "Active", + "subscriptionId": "90D31600-D46D-4084-84C6-1235CDAFFB56" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "name": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Dev Test Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Domain Name Registration ORG", + "resourceUri": "/providers/Microsoft.Domain/domainSubscriptions/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "status": "Active", + "subscriptionId": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByCustomer.json new file mode 100644 index 000000000000..fb2066395f9b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByCustomer.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "customerName": "Q7GV-UUVA-PJA-TGB" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "My Subscription", + "reseller": { + "resellerId": "89e87bdf-a2a2-4687-925f-4c18b27bccfd", + "description": "Reseller1" + }, + "skuId": "0002", + "skuDescription": "Microsoft Azure Standard", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "status": "Active", + "subscriptionId": "6b96d3f2-9008-4a9d-912f-f87744185aa3" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "name": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "Test Subscription", + "reseller": { + "resellerId": "3b65b5a8-bd4f-4084-90e9-e1bd667a2b19", + "description": "Reseller3" + }, + "skuId": "0002", + "skuDescription": "Microsoft Azure Standard", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "status": "Active", + "subscriptionId": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "name": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "Dev Test Subscription", + "skuId": "0001", + "skuDescription": "Domain Name Registration ORG", + "resourceUri": "/providers/Microsoft.Domain/domainSubscriptions/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "status": "Active", + "subscriptionId": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByCustomerAtBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByCustomerAtBillingAccount.json new file mode 100644 index 000000000000..d472c8ae74b2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByCustomerAtBillingAccount.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "customerName": "Q7GV-UUVA-PJA-TGB" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "My Subscription", + "reseller": { + "resellerId": "89e87bdf-a2a2-4687-925f-4c18b27bccfd", + "description": "Reseller1" + }, + "skuId": "0002", + "skuDescription": "Microsoft Azure Standard", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "status": "Active", + "subscriptionId": "6b96d3f2-9008-4a9d-912f-f87744185aa3" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "name": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "Test Subscription", + "reseller": { + "resellerId": "3b65b5a8-bd4f-4084-90e9-e1bd667a2b19", + "description": "Reseller3" + }, + "skuId": "0002", + "skuDescription": "Microsoft Azure Standard", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "status": "Active", + "subscriptionId": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "name": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "Dev Test Subscription", + "skuId": "0001", + "skuDescription": "Domain Name Registration ORG", + "resourceUri": "/providers/Microsoft.Domain/domainSubscriptions/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "status": "Active", + "subscriptionId": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByEnrollmentAccount.json new file mode 100644 index 000000000000..3c5cab3ccedd --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByEnrollmentAccount.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6564892", + "enrollmentAccountName": "172988" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/6564892/billingSubscriptions/90000000-0000-0000-0000-000000000000", + "name": "90000000-0000-0000-0000-000000000000", + "properties": { + "consumptionCostCenter": "123", + "displayName": "TestSubscription", + "enrollmentAccountId": "172988", + "enrollmentAccountDisplayName": "billtest332211@outlook.com", + "enrollmentAccountSubscriptionDetails": { + "enrollmentAccountStartDate": "2023-01-04T00:00:00.0000000Z" + }, + "subscriptionId": "90000000-0000-0000-0000-000000000000" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/6564892/billingSubscriptions/90000000-0000-0000-0000-000000000001", + "name": "90000000-0000-0000-0000-000000000001", + "properties": { + "consumptionCostCenter": "", + "displayName": "Microsoft Azure Enterprise-1", + "enrollmentAccountId": "172988", + "enrollmentAccountDisplayName": "billtest332211@outlook.com", + "enrollmentAccountSubscriptionDetails": { + "enrollmentAccountStartDate": "2023-01-04T00:00:00.0000000Z", + "subscriptionEnrollmentAccountStatus": "Deleted" + }, + "subscriptionId": "90000000-0000-0000-0000-000000000001" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByInvoiceSection.json new file mode 100644 index 000000000000..1b6d720e06c1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsListByInvoiceSection.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "invoiceSectionName": "Q7GV-UUVA-PJA-TGB" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "My Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "status": "Active", + "subscriptionId": "6b96d3f2-9008-4a9d-912f-f87744185aa3" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "name": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Test Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "status": "Active", + "subscriptionId": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/90D31600-D46D-4084-84C6-1235CDAFFB56", + "name": "90D31600-D46D-4084-84C6-1235CDAFFB56", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Dev Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "resourceUri": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/90D31600-D46D-4084-84C6-1235CDAFFB56", + "status": "Active", + "subscriptionId": "90D31600-D46D-4084-84C6-1235CDAFFB56" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingSubscriptions/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "name": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Dev Test Subscription", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Domain Name Registration ORG", + "resourceUri": "/providers/Microsoft.Domain/domainSubscriptions/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "status": "Active", + "subscriptionId": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsMerge.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsMerge.json new file mode 100644 index 000000000000..8de5be257344 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsMerge.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingSubscriptionName": "11111111-1111-1111-1111-111111111111", + "parameters": { + "targetBillingSubscriptionName": "22222222-2222-2222-2222-222222222222", + "quantity": 1 + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/22222222-2222-2222-2222-222222222222", + "name": "22222222-2222-2222-2222-222222222222", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Billing Subscription Display Name", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 2, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions", + "systemData": { + "createdAt": "2023-01-05T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-25T22:39:34.2606750Z" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/splitBillingSubscription_11111111-1111-1111-1111-111111111111:22222222-2222-2222-2222-222222222222?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsSplit.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsSplit.json new file mode 100644 index 000000000000..e543605999b9 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsSplit.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingSubscriptionName": "11111111-1111-1111-1111-111111111111", + "parameters": { + "targetProductTypeId": "XYZ56789", + "targetSkuId": "0001", + "quantity": 1, + "termDuration": "P1M", + "billingFrequency": "P1M" + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Billing Subscription Display Name", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions", + "systemData": { + "createdAt": "2023-01-05T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-25T22:39:34.2606750Z" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/splitBillingSubscription_11111111-1111-1111-1111-111111111111:22222222-2222-2222-2222-222222222222?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsUpdate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsUpdate.json new file mode 100644 index 000000000000..415a2c20f6ba --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/billingSubscriptionsUpdate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingSubscriptionName": "11111111-1111-1111-1111-111111111111", + "parameters": { + "properties": { + "consumptionCostCenter": "ABC1234" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "displayName": "Billing Subscription Display Name", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "productCategory": "SeatBased", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "skuId": "0001", + "skuDescription": "SKU Description", + "systemOverrides": { + "cancellationAllowedEndDate": "2023-02-01T22:39:34.2606750Z" + }, + "termDuration": "P1M", + "termStartDate": "2023-01-05T22:39:34.2606750Z", + "termEndDate": "2023-02-05T22:39:34.2606750Z", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions", + "systemData": { + "createdAt": "2023-01-05T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-25T22:39:34.2606750Z" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/manageBillingSubscription_11111111-1111-1111-1111-111111111111:22222222-2222-2222-2222-222222222222?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByBillingAccount.json new file mode 100644 index 000000000000..5f13a4f6bd5e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByBillingAccount.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "parameters": { + "actions": [ + "Microsoft.Billing/billingAccounts/read", + "Microsoft.Subscription/subscriptions/write" + ] + } + }, + "responses": { + "200": { + "body": [ + { + "accessDecision": "Allowed", + "action": "Microsoft.Billing/billingAccounts/read" + }, + { + "accessDecision": "NotAllowed", + "action": "Microsoft.Subscription/subscriptions/write" + } + ] + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByBillingProfile.json new file mode 100644 index 000000000000..f4d5437d5c4a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByBillingProfile.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "parameters": { + "actions": [ + "Microsoft.Billing/billingAccounts/read", + "Microsoft.Subscription/subscriptions/write" + ] + } + }, + "responses": { + "200": { + "body": [ + { + "accessDecision": "Allowed", + "action": "Microsoft.Billing/billingAccounts/read" + }, + { + "accessDecision": "NotAllowed", + "action": "Microsoft.Subscription/subscriptions/write" + } + ] + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByCustomer.json new file mode 100644 index 000000000000..d1a84fcc0698 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByCustomer.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "703ab484-dda2-4402-827b-a74513b61e2d", + "parameters": { + "actions": [ + "Microsoft.Billing/billingAccounts/read", + "Microsoft.Subscription/subscriptions/write" + ] + } + }, + "responses": { + "200": { + "body": [ + { + "accessDecision": "Allowed", + "action": "Microsoft.Billing/billingAccounts/read" + }, + { + "accessDecision": "NotAllowed", + "action": "Microsoft.Subscription/subscriptions/write" + } + ] + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByDepartment.json new file mode 100644 index 000000000000..9392d497629c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByDepartment.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "departmentName": "12345", + "parameters": { + "actions": [ + "Microsoft.Billing/billingAccounts/read", + "Microsoft.Subscription/subscriptions/write" + ] + } + }, + "responses": { + "200": { + "body": [ + { + "accessDecision": "Allowed", + "action": "Microsoft.Billing/billingAccounts/read" + }, + { + "accessDecision": "NotAllowed", + "action": "Microsoft.Subscription/subscriptions/write" + } + ] + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByEnrollmentAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByEnrollmentAccount.json new file mode 100644 index 000000000000..13b589c0e9d3 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByEnrollmentAccount.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "enrollmentAccountName": "123456", + "parameters": { + "actions": [ + "Microsoft.Billing/billingAccounts/read", + "Microsoft.Subscription/subscriptions/write" + ] + } + }, + "responses": { + "200": { + "body": [ + { + "accessDecision": "Allowed", + "action": "Microsoft.Billing/billingAccounts/read" + }, + { + "accessDecision": "NotAllowed", + "action": "Microsoft.Subscription/subscriptions/write" + } + ] + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByInvoiceSection.json new file mode 100644 index 000000000000..9183596dc5c6 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/checkAccessByInvoiceSection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "Q7GV-UUVA-PJA-TGB", + "parameters": { + "actions": [ + "Microsoft.Billing/billingAccounts/read", + "Microsoft.Subscription/subscriptions/write" + ] + } + }, + "responses": { + "200": { + "body": [ + { + "accessDecision": "Allowed", + "action": "Microsoft.Billing/billingAccounts/read" + }, + { + "accessDecision": "NotAllowed", + "action": "Microsoft.Subscription/subscriptions/write" + } + ] + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersGet.json new file mode 100644 index 000000000000..0420a61fbaf1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "displayName": "customer1", + "systemId": "yyyy-yyyy-yyy-yyy", + "status": "Active", + "enabledAzurePlans": [ + { + "skuId": "0002", + "skuDescription": "Microsoft Azure Plan for DevTest" + } + ], + "resellers": [ + { + "resellerId": "89e87bdf-a2a2-4687-925f-4c18b27bccfd", + "description": "Reseller1" + }, + { + "resellerId": "3b65b5a8-bd4f-4084-90e9-e1bd667a2b19", + "description": "Reseller2" + } + ], + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersGetByBillingAccount.json new file mode 100644 index 000000000000..3166cddbe70e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersGetByBillingAccount.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "customerName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "displayName": "customer1", + "systemId": "yyyy-yyyy-yyy-yyy", + "status": "Active", + "enabledAzurePlans": [ + { + "skuId": "0002", + "skuDescription": "Microsoft Azure Plan for DevTest" + } + ], + "resellers": [ + { + "resellerId": "89e87bdf-a2a2-4687-925f-4c18b27bccfd", + "description": "Reseller1" + }, + { + "resellerId": "3b65b5a8-bd4f-4084-90e9-e1bd667a2b19", + "description": "Reseller2" + } + ], + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingAccount.json new file mode 100644 index 000000000000..572f5fb6eb48 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingAccount.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "displayName": "customer1", + "systemId": "yyyy-yyyy-yyy-yyy", + "status": "Active", + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/22222222-2222-2222-2222-222222222222", + "name": "22222222-2222-2222-2222-222222222222", + "properties": { + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "displayName": "customer2", + "systemId": "zzzz-zzzz-zzz-zzz", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingAccountWithExpand.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingAccountWithExpand.json new file mode 100644 index 000000000000..abdd7d4acfe7 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingAccountWithExpand.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expand": "enabledAzurePlans,resellers" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "displayName": "customer1", + "systemId": "yyyy-yyyy-yyy-yyy", + "status": "Active", + "enabledAzurePlans": [ + { + "skuId": "0002", + "skuDescription": "Microsoft Azure Plan for DevTest" + } + ], + "resellers": [ + { + "resellerId": "89e87bdf-a2a2-4687-925f-4c18b27bccfd", + "description": "Reseller1" + }, + { + "resellerId": "3b65b5a8-bd4f-4084-90e9-e1bd667a2b19", + "description": "Reseller2" + } + ], + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingProfile.json new file mode 100644 index 000000000000..6655c8fba7a2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/customersListByBillingProfile.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "displayName": "customer1", + "systemId": "yyyy-yyyy-yyy-yyy", + "status": "Active", + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/22222222-2222-2222-2222-222222222222", + "name": "22222222-2222-2222-2222-222222222222", + "properties": { + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "displayName": "customer2", + "systemId": "zzzz-zzzz-zzz-zzz", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/departmentGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/departmentGet.json new file mode 100644 index 000000000000..a876fa5a6f7b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/departmentGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "456598", + "departmentName": "164821" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/456598/departments/164821", + "name": "164821", + "properties": { + "costCenter": "C1", + "displayName": "Test department", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/departments" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/departmentsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/departmentsListByBillingAccount.json new file mode 100644 index 000000000000..1d530f257b1d --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/departmentsListByBillingAccount.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "456598" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/456598/departments/164821", + "name": "164821", + "properties": { + "costCenter": "C1", + "displayName": "departmentName1", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/departments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/456598/departments/164822", + "name": "164822", + "properties": { + "costCenter": "C4", + "displayName": "departmentName2", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/departments" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountByDepartment.json new file mode 100644 index 000000000000..69e8c2ad9aeb --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountByDepartment.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6564892", + "departmentName": "164821", + "enrollmentAccountName": "257698" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892/departments/164821/enrollmentAccounts/257698", + "name": "257698", + "properties": { + "costCenter": "C0", + "displayName": "AccountName0", + "departmentDisplayName": "TestDept", + "departmentId": "164821", + "isDevTestEnabled": true, + "accountOwner": "account0@contoso.com", + "authType": "MicrosoftAccount", + "status": "Active", + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z" + }, + "type": "Microsoft.Billing/billingAccounts/departments/enrollmentAccounts" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountGet.json new file mode 100644 index 000000000000..1727fe1059f8 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6564892", + "enrollmentAccountName": "257698" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892/enrollmentAccounts/257698", + "name": "257698", + "properties": { + "costCenter": "C0", + "displayName": "AccountName0", + "departmentDisplayName": "TestDept123", + "departmentId": "234516", + "isDevTestEnabled": true, + "accountOwner": "account0@contoso.com", + "authType": "Organization", + "status": "Active", + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountsListByBillingAccount.json new file mode 100644 index 000000000000..5516c5102f55 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountsListByBillingAccount.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6564892" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892/enrollmentAccounts/257698", + "name": "257698", + "properties": { + "costCenter": "C0", + "displayName": "AccountName0", + "departmentDisplayName": "TestDept123", + "departmentId": "234516", + "isDevTestEnabled": true, + "accountOwner": "account0@contoso.com", + "authType": "Organization", + "status": "Active", + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892/enrollmentAccounts/264698", + "name": "264698", + "properties": { + "costCenter": "C1", + "displayName": "AccountName1", + "departmentDisplayName": "TestDept1", + "departmentId": "234531", + "isDevTestEnabled": true, + "accountOwner": "account1@contoso.com", + "authType": "MicrosoftAccount", + "status": "Active", + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892/enrollmentAccounts/276290", + "name": "276290", + "properties": { + "costCenter": "C2", + "displayName": "AccountName2", + "departmentDisplayName": "TestDept2", + "departmentId": "234512", + "isDevTestEnabled": true, + "accountOwner": "account2@contoso.com", + "authType": "Organization", + "status": "Active", + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z" + }, + "type": "Microsoft.Billing/billingAccounts/enrollmentAccounts" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountsListByDepartment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountsListByDepartment.json new file mode 100644 index 000000000000..e08ee1045efe --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/enrollmentAccountsListByDepartment.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "6564892", + "departmentName": "164821" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892/departments/164821/enrollmentAccounts/257698", + "name": "257698", + "properties": { + "costCenter": "C0", + "displayName": "AccountName0", + "departmentDisplayName": "TestDept", + "departmentId": "164821", + "isDevTestEnabled": true, + "accountOwner": "account0@contoso.com", + "authType": "MicrosoftAccount", + "status": "Active", + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z" + }, + "type": "Microsoft.Billing/billingAccounts/departments/enrollmentAccounts" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/6564892/departments/164821/enrollmentAccounts/264698", + "name": "264698", + "properties": { + "costCenter": "C1", + "displayName": "AccountName1", + "departmentDisplayName": "TestDept", + "departmentId": "164821", + "isDevTestEnabled": false, + "accountOwner": "account1@contoso.com", + "authType": "Organization", + "status": "Active", + "startDate": "2018-05-01T17:32:28Z", + "endDate": "2019-05-31T17:32:28Z" + }, + "type": "Microsoft.Billing/billingAccounts/departments/enrollmentAccounts" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsCreateOrUpdate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsCreateOrUpdate.json new file mode 100644 index 000000000000..f7f6a1a1731e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsCreateOrUpdate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "invoice-section-1", + "parameters": { + "properties": { + "displayName": "Invoice Section 1", + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/invoice-section-1", + "name": "invoice-section-1", + "properties": { + "displayName": "Invoice Section 1", + "systemId": "yyyy-yyyy-yyy-yyy", + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/invoice-section-1", + "name": "invoice-section-1", + "properties": { + "displayName": "Invoice Section 1", + "systemId": "yyyy-yyyy-yyy-yyy", + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections" + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/putAssociatedTenant_00000000-0000-0000-0000-000000000000?api-version=2024-04-01", + "retry-after": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsDelete.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsDelete.json new file mode 100644 index 000000000000..0bcbd1035e0c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/deleteInvoiceSection_00000000-0000-0000-0000-000000000000?api-version=2024-04-01", + "retry-after": "10" + } + }, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsGet.json new file mode 100644 index 000000000000..7ea5ce403fe1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/invoice-section-1", + "name": "invoice-section-1", + "properties": { + "displayName": "Invoice Section 1", + "systemId": "yyyy-yyyy-yyy-yyy", + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsListByBillingProfile.json new file mode 100644 index 000000000000..b143a636d1a1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsListByBillingProfile.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "includeDeleted": true + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/invoice-section-1", + "name": "invoice-section-1", + "properties": { + "displayName": "Invoice Section 1", + "state": "Active", + "systemId": "yyyy-yyyy-yyy-yyy", + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/invoice-section-2", + "name": "invoice-section-2", + "properties": { + "displayName": "Invoice Section 2", + "state": "Warned", + "reasonCode": "PastDue", + "systemId": "zzzz-zzzz-zzz-zzz", + "tags": { + "pcCode": "Z345678", + "costCategory": "Marketing" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/invoice-section-3", + "name": "invoice-section-3", + "properties": { + "displayName": "Invoice Section 3", + "state": "Deleted", + "systemId": "aaaa-aaaa-aaa-aaa", + "tags": { + "pcCode": "A123456", + "costCategory": "Support" + } + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsValidateDeleteEligibilityFailure.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsValidateDeleteEligibilityFailure.json new file mode 100644 index 000000000000..c274e79aded2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsValidateDeleteEligibilityFailure.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy" + }, + "responses": { + "200": { + "body": { + "eligibilityStatus": "NotAllowed", + "eligibilityDetails": [ + { + "code": "ActiveBillingSubscriptions", + "message": "There are active or disabled subscriptions assigned to the invoice section. Either move the subscription to another invoice section or delete the subscriptions and then try deleting the invoice section." + }, + { + "code": "LastInvoiceSection", + "message": "This is the only invoice section in this billing profile so it can’t be deleted." + }, + { + "code": "ActiveAzurePlans", + "message": "This is the invoice section that was created when its billing profile was created so it can’t be deleted." + }, + { + "code": "ReservedInstances", + "message": "The invoice section has the RI asset with a billing plan." + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsValidateDeleteEligibilitySuccess.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsValidateDeleteEligibilitySuccess.json new file mode 100644 index 000000000000..21f8bfc23c13 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsValidateDeleteEligibilitySuccess.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsWithCreateSubscriptionPermissionList.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsWithCreateSubscriptionPermissionList.json new file mode 100644 index 000000000000..878a9223f35e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoiceSectionsWithCreateSubscriptionPermissionList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "billingProfileDisplayName": "Billing Profile Display Name", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileSystemId": "33000000-0000-0000-0000-000000000000", + "billingProfileStatus": "Warned", + "billingProfileStatusReasonCode": "PastDue", + "billingProfileSpendingLimit": "On", + "enabledAzurePlans": [ + { + "skuId": "0001", + "skuDescription": "Microsoft Azure Plan" + }, + { + "skuId": "0002", + "skuDescription": "Microsoft Azure Plan for DevTest" + } + ], + "invoiceSectionDisplayName": "Invoice Section Display Name", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionSystemId": "22000000-0000-0000-0000-000000000000" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesAmend.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesAmend.json new file mode 100644 index 000000000000..9aeb97d29b16 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesAmend.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "invoiceName": "G123456789" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789/operationResults/invoiceAmend_11111111-1111-1111-1111-111111111111?api-version=2024-04-01", + "Retry-After": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadByBillingAccount.json new file mode 100644 index 000000000000..50877f606d79 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadByBillingAccount.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "invoiceName": "G123456789", + "documentName": "12345678" + }, + "responses": { + "200": { + "body": { + "expiryTime": "2023-02-16T17:32:28Z", + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sp=r" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/invoiceDownload_11111111-1111-1111-1111-111111111111?api-version=2024-04-01", + "Retry-After": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadByBillingSubscription.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadByBillingSubscription.json new file mode 100644 index 000000000000..cd1d29c4d592 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadByBillingSubscription.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "invoiceName": "E123456789", + "documentName": "12345678" + }, + "responses": { + "200": { + "body": { + "expiryTime": "2023-02-16T17:32:28Z", + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sp=r" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/00000000-0000-0000-0000-000000000000/operationResults/invoiceDownload_11111111-1111-1111-1111-111111111111?api-version=2024-04-01", + "Retry-After": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadDocumentsByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadDocumentsByBillingAccount.json new file mode 100644 index 000000000000..3dd14b57b953 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadDocumentsByBillingAccount.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "parameters": [ + { + "documentName": "12345678", + "invoiceName": "G123456789" + }, + { + "documentName": "12345678", + "invoiceName": "G987654321" + } + ] + }, + "responses": { + "200": { + "body": { + "expiryTime": "2023-02-16T17:32:28Z", + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sp=r" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/invoiceDownload_11111111-1111-1111-1111-111111111111?api-version=2024-04-01", + "Retry-After": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadDocumentsByBillingSubscription.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadDocumentsByBillingSubscription.json new file mode 100644 index 000000000000..872bde3b455b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadDocumentsByBillingSubscription.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "parameters": [ + { + "documentName": "12345678", + "invoiceName": "E123456789" + }, + { + "documentName": "12345678", + "invoiceName": "E987654321" + } + ] + }, + "responses": { + "200": { + "body": { + "expiryTime": "2023-02-16T17:32:28Z", + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sp=r" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/00000000-0000-0000-0000-000000000000/operationResults/invoiceDownload_11111111-1111-1111-1111-111111111111?api-version=2024-04-01", + "Retry-After": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadSummaryByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadSummaryByBillingAccount.json new file mode 100644 index 000000000000..f2c3759ba5de --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesDownloadSummaryByBillingAccount.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "123456789", + "invoiceName": "G123456789" + }, + "responses": { + "200": { + "body": { + "expiryTime": "2023-02-16T17:32:28Z", + "url": "https://myaccount.blob.core.windows.net/invoices/1383724_summary.pdf?sv=2019-02-02&sr=b&sp=r" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/123456789/operationResults/invoiceSummaryDownload_11111111-1111-1111-1111-111111111111?api-version=2024-04-01", + "Retry-After": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGet.json new file mode 100644 index 000000000000..3631d75fc2d7 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGet.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "invoiceName": "G123456789" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "name": "G123456789", + "properties": { + "amountDue": { + "currency": "USD", + "value": 8.53 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 25.46 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "creditAmount": { + "currency": "USD", + "value": 0 + }, + "documents": [ + { + "kind": "Invoice", + "name": "12345678" + }, + { + "kind": "TaxReceipt", + "name": "22345678" + } + ], + "documentType": "Invoice", + "dueDate": "2023-02-16T17:32:28Z", + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0 + }, + "invoiceDate": "2023-02-01T17:32:28Z", + "invoicePeriodEndDate": "2023-02-15T17:32:28Z", + "invoicePeriodStartDate": "2023-02-01T17:32:28Z", + "isMonthlyInvoice": false, + "purchaseOrderNumber": "123456", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000002", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote2", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000001", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote" + } + }, + "status": "Due", + "specialTaxationType": "SubtotalLevel", + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 1 + }, + "totalAmount": { + "currency": "USD", + "value": 7.53 + } + }, + "type": "Microsoft.Billing/billingAccounts/invoices" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGetByBillingAccount.json new file mode 100644 index 000000000000..9f901c68983f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGetByBillingAccount.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "invoiceName": "G123456789" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "name": "G123456789", + "properties": { + "amountDue": { + "currency": "USD", + "value": 8.53 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 25.46 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "creditAmount": { + "currency": "USD", + "value": 0 + }, + "documents": [ + { + "kind": "Invoice", + "name": "12345678" + }, + { + "kind": "TaxReceipt", + "name": "22345678" + } + ], + "documentType": "Invoice", + "dueDate": "2023-02-16T17:32:28Z", + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0 + }, + "invoiceDate": "2023-02-01T17:32:28Z", + "invoicePeriodEndDate": "2023-02-15T17:32:28Z", + "invoicePeriodStartDate": "2023-02-01T17:32:28Z", + "isMonthlyInvoice": false, + "purchaseOrderNumber": "123456", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000002", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote2", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000001", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote" + } + }, + "status": "Due", + "specialTaxationType": "SubtotalLevel", + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 1 + }, + "totalAmount": { + "currency": "USD", + "value": 7.53 + } + }, + "type": "Microsoft.Billing/billingAccounts/invoices" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGetByBillingSubscription.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGetByBillingSubscription.json new file mode 100644 index 000000000000..61816249e447 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesGetByBillingSubscription.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "11111111-1111-1111-1111-111111111111", + "invoiceName": "E123456789" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/11111111-1111-1111-1111-111111111111/invoices/E123456789", + "name": "E123456789", + "properties": { + "amountDue": { + "currency": "USD", + "value": 8.53 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "dueDate": "2023-02-16T17:32:28Z", + "invoiceDate": "2023-02-01T17:32:28Z", + "invoicePeriodEndDate": "2023-02-15T17:32:28Z", + "invoicePeriodStartDate": "2023-02-01T17:32:28Z", + "invoiceType": "AzureServices", + "purchaseOrderNumber": "123456", + "status": "Due", + "subscriptionDisplayName": "Contoso Operations Billing", + "subscriptionId": "11111111-1111-1111-1111-111111111111" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions/invoices" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingAccount.json new file mode 100644 index 000000000000..9027fef1b823 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingAccount.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "periodStartDate": "2023-01-01", + "periodEndDate": "2023-06-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "name": "G123456789", + "properties": { + "amountDue": { + "currency": "USD", + "value": 8.53 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 25.46 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "creditAmount": { + "currency": "USD", + "value": 0 + }, + "documents": [ + { + "kind": "Invoice", + "name": "12345678" + }, + { + "kind": "TaxReceipt", + "name": "22345678" + } + ], + "documentType": "Invoice", + "dueDate": "2023-02-16T17:32:28Z", + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0 + }, + "invoiceDate": "2023-02-01T17:32:28Z", + "invoicePeriodEndDate": "2023-02-15T17:32:28Z", + "invoicePeriodStartDate": "2023-02-01T17:32:28Z", + "isMonthlyInvoice": false, + "purchaseOrderNumber": "123456", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000002", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote2", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000001", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote" + } + }, + "status": "Due", + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 1 + }, + "totalAmount": { + "currency": "USD", + "value": 7.53 + } + }, + "type": "Microsoft.Billing/billingAccounts/invoices" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G987654321", + "name": "G987654321", + "properties": { + "amountDue": { + "currency": "USD", + "value": 0 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 25.46 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "creditAmount": { + "currency": "USD", + "value": 0 + }, + "documents": [ + { + "kind": "Invoice", + "name": "12345678" + }, + { + "kind": "TaxReceipt", + "name": "22345678" + } + ], + "documentType": "Invoice", + "dueDate": "2023-01-16T17:32:28Z", + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0 + }, + "invoiceDate": "2023-01-01T17:32:28Z", + "invoicePeriodEndDate": "2023-01-15T17:32:28Z", + "invoicePeriodStartDate": "2023-01-01T17:32:28Z", + "isMonthlyInvoice": false, + "payments": [ + { + "amount": { + "currency": "USD", + "value": 33.99 + }, + "date": "2023-01-14T17:32:28Z", + "paymentMethodFamily": "CreditCard", + "paymentMethodType": "visa", + "paymentType": "debited" + } + ], + "purchaseOrderNumber": "123455", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000002", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote2", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000001", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote" + } + }, + "status": "Paid", + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 1 + }, + "totalAmount": { + "currency": "USD", + "value": 7.53 + } + }, + "type": "Microsoft.Billing/billingAccounts/invoices" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingProfile.json new file mode 100644 index 000000000000..ecf3db7b638b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingProfile.json @@ -0,0 +1,163 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "periodStartDate": "2023-01-01", + "periodEndDate": "2023-06-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "name": "G123456789", + "properties": { + "amountDue": { + "currency": "USD", + "value": 8.53 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 25.46 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "creditAmount": { + "currency": "USD", + "value": 0 + }, + "documents": [ + { + "kind": "Invoice", + "name": "12345678" + }, + { + "kind": "TaxReceipt", + "name": "22345678" + } + ], + "documentType": "Invoice", + "dueDate": "2023-02-16T17:32:28Z", + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0 + }, + "invoiceDate": "2023-02-01T17:32:28Z", + "invoicePeriodEndDate": "2023-02-15T17:32:28Z", + "invoicePeriodStartDate": "2023-02-01T17:32:28Z", + "isMonthlyInvoice": false, + "purchaseOrderNumber": "123456", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000002", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote2", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000001", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote" + } + }, + "status": "Due", + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 1 + }, + "totalAmount": { + "currency": "USD", + "value": 7.53 + } + }, + "type": "Microsoft.Billing/billingAccounts/invoices" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G987654321", + "name": "G987654321", + "properties": { + "amountDue": { + "currency": "USD", + "value": 0 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 25.46 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "billingProfileDisplayName": "Contoso Operations Billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "creditAmount": { + "currency": "USD", + "value": 0 + }, + "documents": [ + { + "kind": "Invoice", + "name": "12345678" + }, + { + "kind": "TaxReceipt", + "name": "22345678" + } + ], + "documentType": "Invoice", + "dueDate": "2023-01-16T17:32:28Z", + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0 + }, + "invoiceDate": "2023-01-01T17:32:28Z", + "invoicePeriodEndDate": "2023-01-15T17:32:28Z", + "invoicePeriodStartDate": "2023-01-01T17:32:28Z", + "isMonthlyInvoice": false, + "payments": [ + { + "amount": { + "currency": "USD", + "value": 33.99 + }, + "date": "2023-01-14T17:32:28Z", + "paymentMethodFamily": "CreditCard", + "paymentMethodType": "visa", + "paymentType": "debited" + } + ], + "purchaseOrderNumber": "123455", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000002", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote2", + "rebillDetails": { + "invoiceDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/I000001", + "creditNoteDocumentId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/CreditNote" + } + }, + "status": "Paid", + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 1 + }, + "totalAmount": { + "currency": "USD", + "value": 7.53 + } + }, + "type": "Microsoft.Billing/billingAccounts/invoices" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingSubscription.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingSubscription.json new file mode 100644 index 000000000000..9ea623b7b3b5 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/invoicesListByBillingSubscription.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "11111111-1111-1111-1111-111111111111", + "periodStartDate": "2023-01-01", + "periodEndDate": "2023-06-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/11111111-1111-1111-1111-111111111111/invoices/E123456789", + "name": "E123456789", + "properties": { + "amountDue": { + "currency": "USD", + "value": 8.53 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "dueDate": "2023-02-16T17:32:28Z", + "invoiceDate": "2023-02-01T17:32:28Z", + "invoicePeriodEndDate": "2023-02-15T17:32:28Z", + "invoicePeriodStartDate": "2023-02-01T17:32:28Z", + "invoiceType": "AzureServices", + "purchaseOrderNumber": "123456", + "status": "Due", + "subscriptionDisplayName": "Contoso Operations Billing", + "subscriptionId": "11111111-1111-1111-1111-111111111111" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions/invoices" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/11111111-1111-1111-1111-111111111111/invoices/G123456789", + "name": "G123456789", + "properties": { + "amountDue": { + "currency": "USD", + "value": 15.53 + }, + "billedAmount": { + "currency": "USD", + "value": 55.99 + }, + "dueDate": "2023-02-16T17:32:28Z", + "invoiceDate": "2023-02-01T17:32:28Z", + "invoicePeriodEndDate": "2023-02-15T17:32:28Z", + "invoicePeriodStartDate": "2023-02-01T17:32:28Z", + "invoiceType": "AzureMarketplace", + "purchaseOrderNumber": "123456", + "status": "Due", + "subscriptionDisplayName": "Contoso Operations Billing", + "subscriptionId": "11111111-1111-1111-1111-111111111111" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions/invoices" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/11111111-1111-1111-1111-111111111111/invoices/E987654321", + "name": "E987654321", + "properties": { + "amountDue": { + "currency": "USD", + "value": 8.53 + }, + "billedAmount": { + "currency": "USD", + "value": 33.99 + }, + "documents": [ + { + "kind": "Invoice", + "name": "12345678" + } + ], + "dueDate": "2023-01-16T17:32:28Z", + "invoiceDate": "2023-01-01T17:32:28Z", + "invoicePeriodEndDate": "2023-01-15T17:32:28Z", + "invoicePeriodStartDate": "2023-01-01T17:32:28Z", + "invoiceType": "AzureSupport", + "payments": [ + { + "amount": { + "currency": "USD", + "value": 2000 + }, + "date": "2023-01-14T17:32:28Z", + "paymentMethodFamily": "CreditCard", + "paymentMethodType": "visa", + "paymentType": "credited" + } + ], + "purchaseOrderNumber": "123456", + "status": "Due", + "subscriptionDisplayName": "Contoso Operations Billing", + "subscriptionId": "11111111-1111-1111-1111-111111111111" + }, + "type": "Microsoft.Billing/billingAccounts/billingSubscriptions/invoices" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/operationsList.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/operationsList.json new file mode 100644 index 000000000000..43d9ddc7dba2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/operationsList.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "{namespace}/resource/read", + "display": { + "operation": "List resources", + "provider": "{namespace}", + "resource": "resource" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersCancel.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersCancel.json new file mode 100644 index 000000000000..05c6064bc437 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersCancel.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111", + "transferName": "aabb123" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "Pending", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "initiatorCustomerType": "Partner", + "canceledBy": "user@contoso.com" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersGet.json new file mode 100644 index 000000000000..077a453b3dd3 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111", + "transferName": "aabb123" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "initiatorCustomerType": "Partner", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "productName": "Azure subscription 1", + "skuDescription": "MS-AZR-0017G", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "productName": "Reservation name", + "skuDescription": "Standard_D2s_v3;VirtualMachines;P1Y", + "transferStatus": "InProgress" + } + ] + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersInitiate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersInitiate.json new file mode 100644 index 000000000000..2f504241e882 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersInitiate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111", + "transferName": "aabb123", + "parameters": { + "properties": { + "recipientEmailId": "user@contoso.com" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "Pending", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "initiatorCustomerType": "Partner" + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "Pending", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "initiatorCustomerType": "Partner" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersList.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersList.json new file mode 100644 index 000000000000..9a99ec1f3832 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/partnerTransfersList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111", + "transferName": "aabb123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "initiatorCustomerType": "Partner", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "productName": "Azure subscription 1", + "skuDescription": "MS-AZR-0017G", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "productName": "Reservation name", + "skuDescription": "Standard_D2s_v3;VirtualMachines;P1Y", + "transferStatus": "InProgress" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsDeleteAtBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsDeleteAtBillingProfile.json new file mode 100644 index 000000000000..ad9a0b34e97d --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsDeleteAtBillingProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31", + "billingProfileName": "ABC1-A1CD-AB1-BP1", + "paymentMethodName": "ABCDABCDABC0" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/paymentMethodLinks/operationResults/ed2975a8-8f77-43bb-a717-ace54326b14b?api-version=2024-04-01", + "Retry-After": "60" + } + }, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsDeleteByUser.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsDeleteByUser.json new file mode 100644 index 000000000000..1573481c5c15 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsDeleteByUser.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "paymentMethodName": "ABCDABCDABC0" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByBillingAccount.json new file mode 100644 index 000000000000..d43dbe5178c0 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByBillingAccount.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31", + "paymentMethodName": "21dd9edc-af71-4d62-80ce-37151d475326" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31/paymentMethods/21dd9edc-af71-4d62-80ce-37151d475326", + "name": "21dd9edc-af71-4d62-80ce-37151d475326", + "type": "Microsoft.Billing/billingAccounts/paymentMethods", + "properties": { + "family": "CheckWire", + "paymentMethodType": "check", + "displayName": "Check/wire transfer" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByBillingProfile.json new file mode 100644 index 000000000000..fb10f118429b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByBillingProfile.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31", + "billingProfileName": "ABC1-A1CD-AB1-BP1", + "paymentMethodName": "ABCDABCDABC0" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31/billingProfiles/ABC1-A1CD-AB1-BP1/paymentMethodLinks/ABCDABCDABC0", + "name": "ABCDABCDABC0", + "type": "Microsoft.Billing/billingAccounts/billingProfiles/paymentMethodLinks", + "properties": { + "paymentMethodId": "/providers/Microsoft.Billing/paymentMethods/ABCDABCDABC0", + "accountHolderName": "abc", + "expiration": "1/2035", + "lastFourDigits": "1270", + "family": "CreditCard", + "paymentMethodType": "mc", + "displayName": "Master Card", + "logos": [ + { + "mimeType": "image/png", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_visa_rect.png" + }, + { + "mimeType": "image/svg+xml", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_visa.svg" + } + ], + "status": "active" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByUser.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByUser.json new file mode 100644 index 000000000000..03ac39e0d9f3 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsGetByUser.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "paymentMethodName": "ABCDABCDABC0" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/paymentMethods/ABCDABCDABC0", + "name": "ABCDABCDABC0", + "type": "Microsoft.Billing/paymentMethods", + "properties": { + "accountHolderName": "abc", + "expiration": "1/2035", + "lastFourDigits": "1270", + "family": "CreditCard", + "paymentMethodType": "mc", + "displayName": "Master Card", + "logos": [ + { + "mimeType": "image/png", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_visa_rect.png" + }, + { + "mimeType": "image/svg+xml", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_visa.svg" + } + ], + "status": "active" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByBillingAccount.json new file mode 100644 index 000000000000..d75938f2a479 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByBillingAccount.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31/paymentMethods/21dd9edc-af71-4d62-80ce-37151d475326", + "name": "21dd9edc-af71-4d62-80ce-37151d475326", + "properties": { + "displayName": "Check/wire transfer", + "family": "CheckWire", + "paymentMethodType": "check" + }, + "type": "Microsoft.Billing/billingAccounts/paymentMethods" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByBillingProfile.json new file mode 100644 index 000000000000..876f72195042 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByBillingProfile.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31", + "billingProfileName": "ABC1-A1CD-AB1-BP1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000032:00000000-0000-0000-0000-000000000099_2019-05-31/billingProfiles/ABC1-A1CD-AB1-BP1/paymentMethodLinks/ABCDABCDABC0", + "name": "ABCDABCDABC0", + "type": "Microsoft.Billing/billingAccounts/billingProfiles/paymentMethodLinks", + "properties": { + "paymentMethodId": "/providers/Microsoft.Billing/paymentMethods/ABCDABCDABC0", + "accountHolderName": "abc", + "expiration": "1/2035", + "lastFourDigits": "1270", + "family": "CreditCard", + "paymentMethodType": "mc", + "displayName": "Master Card", + "logos": [ + { + "mimeType": "image/png", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_visa_rect.png" + }, + { + "mimeType": "image/svg+xml", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_visa.svg" + } + ], + "status": "active" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByUser.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByUser.json new file mode 100644 index 000000000000..93f6f8355cce --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentMethodsListByUser.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2024-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/paymentMethods/ABCDABCDABC0", + "name": "ABCDABCDABC0", + "type": "Microsoft.Billing/paymentMethods", + "properties": { + "accountHolderName": "abc", + "expiration": "1/2035", + "lastFourDigits": "1270", + "family": "CreditCard", + "paymentMethodType": "mc", + "displayName": "Master Card", + "logos": [ + { + "mimeType": "image/png", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_mc_rect.png" + }, + { + "mimeType": "image/svg+xml", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_mc.svg" + } + ], + "status": "active" + } + }, + { + "id": "/providers/Microsoft.Billing/paymentMethods/ABCDABCDABC1", + "name": "ABCDABCDABC1", + "type": "Microsoft.Billing/paymentMethods", + "properties": { + "accountHolderName": "abc", + "expiration": "1/2025", + "lastFourDigits": "7373", + "family": "CreditCard", + "paymentMethodType": "visa", + "displayName": "Visa", + "logos": [ + { + "mimeType": "image/png", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_visa_rect.png" + }, + { + "mimeType": "image/svg+xml", + "url": "https://contoso.com/staticresourceservice/images/v4/logo_visa.svg" + } + ], + "status": "active" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermInvalid.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermInvalid.json new file mode 100644 index 000000000000..30d437b35a74 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermInvalid.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "api-version": "2024-04-01", + "parameters": [ + { + "term": "net10", + "startDate": "2023-02-05T22:39:34.2606750Z", + "endDate": "2023-01-25T22:39:34.2606750Z" + } + ] + }, + "responses": { + "200": { + "body": { + "eligibilityStatus": "Invalid", + "eligibilityDetails": [ + { + "code": "InvalidDateRange", + "message": "The date range is invalid. The start date must be before the end date." + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermValid.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermValid.json new file mode 100644 index 000000000000..0cd84effd69c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermValid.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "api-version": "2024-04-01", + "parameters": [ + { + "term": "net10", + "startDate": "2023-01-05T22:39:34.2606750Z", + "endDate": "2023-01-25T22:39:34.2606750Z" + } + ] + }, + "responses": { + "200": { + "body": { + "eligibilityStatus": "Valid" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermsAdd.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermsAdd.json new file mode 100644 index 000000000000..7ecf399a26cb --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermsAdd.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "api-version": "2024-04-01", + "parameters": [ + { + "term": "net10", + "startDate": "2023-01-05T22:39:34.2606750Z", + "endDate": "2023-01-25T22:39:34.2606750Z" + } + ] + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/operationResults/addPaymentTerms_ed2975a8-8f77-43bb-a717-ace54326b14b?api-version=2024-04-01", + "retry-after": "10", + "operation-id": "ed2975a8-8f77-43bb-a717-ace54326b14b" + } + }, + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/010000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001" + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermsCancel.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermsCancel.json new file mode 100644 index 000000000000..e0a806eeaf07 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/paymentTermsCancel.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "api-version": "2024-04-01", + "parameters": "2023-01-05T22:39:34.2606750Z" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/operationResults/cancelPaymentTerms_ed2975a8-8f77-43bb-a717-ace54326b14b?api-version=2024-04-01", + "retry-after": "10", + "operation-id": "ed2975a8-8f77-43bb-a717-ace54326b14b" + } + }, + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/010000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "name": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "properties": { + "accountStatus": "Active", + "accountType": "Business", + "accountSubType": "Enterprise", + "agreementType": "MicrosoftCustomerAgreement", + "displayName": "Premier Business Account", + "hasReadAccess": true, + "primaryBillingTenantId": "20000000-0000-0000-0000-000000000001" + }, + "type": "Microsoft.Billing/billingAccounts", + "systemData": { + "createdAt": "2023-01-04T22:39:34.2606750Z", + "lastModifiedAt": "2023-01-05T22:39:34.2606750Z" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByBillingAccount.json new file mode 100644 index 000000000000..557a8d860659 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByBillingAccount.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "1234567" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/1234567/policies/default", + "name": "default", + "properties": { + "enterpriseAgreementPolicies": { + "authenticationType": "OrganizationalAccountOnly" + }, + "marketplacePurchases": "AllAllowed", + "reservationPurchases": "Allowed", + "savingsPlanPurchases": "NotAllowed" + }, + "type": "Microsoft.Billing/billingAccounts/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByBillingProfile.json new file mode 100644 index 000000000000..f8fa70b88ffd --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByBillingProfile.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/policies/default", + "name": "default", + "properties": { + "invoiceSectionLabelManagement": "Allowed", + "marketplacePurchases": "AllAllowed", + "reservationPurchases": "Allowed", + "savingsPlanPurchases": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByCustomer.json new file mode 100644 index 000000000000..c63a027a93d6 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByCustomer.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111", + "policyName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/policies/default", + "name": "default", + "properties": { + "viewCharges": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByCustomerAtBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByCustomerAtBillingAccount.json new file mode 100644 index 000000000000..31151821dd51 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetByCustomerAtBillingAccount.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "customerName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/policies/default", + "name": "default", + "properties": { + "viewCharges": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetBySubscription.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetBySubscription.json new file mode 100644 index 000000000000..0f5ed801ddf6 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesGetBySubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/policies/default", + "name": "default", + "properties": { + "policies": [ + { + "name": "ViewCharges", + "value": "Allowed", + "policyType": "SystemControlled", + "scope": "/subscriptions/00000000-0000-0000-0000-000000000000" + } + ] + }, + "type": "Microsoft.Billing/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByBillingAccount.json new file mode 100644 index 000000000000..94ef59622ac5 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByBillingAccount.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "1234567", + "parameters": { + "properties": { + "enterpriseAgreementPolicies": { + "authenticationType": "OrganizationalAccountOnly" + }, + "marketplacePurchases": "AllAllowed", + "reservationPurchases": "Allowed", + "savingsPlanPurchases": "NotAllowed" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/1234567/policies/default", + "name": "default", + "properties": { + "enterpriseAgreementPolicies": { + "authenticationType": "OrganizationalAccountOnly" + }, + "marketplacePurchases": "AllAllowed", + "reservationPurchases": "Allowed", + "savingsPlanPurchases": "NotAllowed" + }, + "type": "Microsoft.Billing/billingAccounts/policies" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/1234567/policies/default", + "name": "default", + "properties": { + "enterpriseAgreementPolicies": { + "authenticationType": "OrganizationalAccountOnly" + }, + "marketplacePurchases": "AllAllowed", + "reservationPurchases": "Allowed", + "savingsPlanPurchases": "NotAllowed" + }, + "type": "Microsoft.Billing/billingAccounts/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByBillingProfile.json new file mode 100644 index 000000000000..9fd97563d7f8 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByBillingProfile.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "parameters": { + "properties": { + "invoiceSectionLabelManagement": "Allowed", + "marketplacePurchases": "AllAllowed", + "reservationPurchases": "Allowed", + "savingsPlanPurchases": "Allowed" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/policies/default", + "name": "default", + "properties": { + "invoiceSectionLabelManagement": "Allowed", + "marketplacePurchases": "AllAllowed", + "reservationPurchases": "Allowed", + "savingsPlanPurchases": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/policies" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/policies/default", + "name": "default", + "properties": { + "invoiceSectionLabelManagement": "Allowed", + "marketplacePurchases": "AllAllowed", + "reservationPurchases": "Allowed", + "savingsPlanPurchases": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByCustomer.json new file mode 100644 index 000000000000..d3daf3ca1d7b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByCustomer.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "11111111-1111-1111-1111-111111111111", + "parameters": { + "properties": { + "viewCharges": "Allowed" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/policies/default", + "name": "default", + "properties": { + "viewCharges": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/policies" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/policies/default", + "name": "default", + "properties": { + "viewCharges": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByCustomerAtBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByCustomerAtBillingAccount.json new file mode 100644 index 000000000000..81b1da8e4f12 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/policiesPutByCustomerAtBillingAccount.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "customerName": "11111111-1111-1111-1111-111111111111", + "parameters": { + "properties": { + "viewCharges": "Allowed" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/policies/default", + "name": "default", + "properties": { + "viewCharges": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/policies" + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/11111111-1111-1111-1111-111111111111/policies/default", + "name": "default", + "properties": { + "viewCharges": "Allowed" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/policies" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productMove.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productMove.json new file mode 100644 index 000000000000..1f657748848b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productMove.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "productName": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "parameters": { + "destinationInvoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB" + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/products/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "My Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Plan", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/operationResults/moveProduct_11000000-0000-0000-0000-000000000000:22000000-0000-0000-0000-000000000000:6b96d3f2-9008-4a9d-912f-f87744185aa3:44000000-0000-0000-0000-000000000055:10000000-0000-0000-0000-000000000001?api-version=2020-12-15-privatepreview", + "Retry-After": "30" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productValidateMoveFailure.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productValidateMoveFailure.json new file mode 100644 index 000000000000..1e5d227ab325 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productValidateMoveFailure.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "invoiceSectionName": "Q7GV-UUVA-PJA-TGB", + "productName": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "parameters": { + "destinationInvoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB" + } + }, + "responses": { + "200": { + "body": { + "errorDetails": { + "code": "ProductInactive", + "message": "Invoice Sections can only be changed for active products." + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productValidateMoveSuccess.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productValidateMoveSuccess.json new file mode 100644 index 000000000000..788479ea2fb0 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productValidateMoveSuccess.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "invoiceSectionName": "Q7GV-UUVA-PJA-TGB", + "productName": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "parameters": { + "destinationInvoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB" + } + }, + "responses": { + "200": { + "body": { + "isMoveEligible": true + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsGet.json new file mode 100644 index 000000000000..ff0ab2c7311d --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "productName": "11111111-1111-1111-1111-111111111111" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/products/90000000-0000-0000-0000-000000000000", + "name": "90000000-0000-0000-0000-000000000000", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "displayName": "My product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "skuId": "0001", + "skuDescription": "SKU Description", + "purchaseDate": "2023-01-04T22:39:34.2606750Z", + "quantity": 1, + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByBillingAccount.json new file mode 100644 index 000000000000..cb0dbabb8f67 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByBillingAccount.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/products/90000000-0000-0000-0000-000000000000", + "name": "90000000-0000-0000-0000-000000000000", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "displayName": "My product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "skuId": "0001", + "skuDescription": "SKU Description", + "purchaseDate": "2023-01-04T22:39:34.2606750Z", + "quantity": 1, + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/products/90000000-0000-0000-0000-000000000001", + "name": "90000000-0000-0000-0000-000000000001", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "displayName": "Test product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "productType": "Software Product Type", + "productTypeId": "EFG456", + "skuId": "0001", + "skuDescription": "SKU Description", + "purchaseDate": "2023-01-06T22:39:34.2606750Z", + "quantity": 1, + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/products/90000000-0000-0000-0000-000000000002", + "name": "90000000-0000-0000-0000-000000000002", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "displayName": "Dev product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "productType": "Reservation Product Type", + "productTypeId": "JKL789", + "skuId": "0001", + "skuDescription": "SKU Description", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "status": "Suspended" + }, + "type": "Microsoft.Billing/billingAccounts/products" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByBillingProfile.json new file mode 100644 index 000000000000..b6a016b5a993 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByBillingProfile.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "My Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "name": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Test Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/90D31600-D46D-4084-84C6-1235CDAFFB56", + "name": "90D31600-D46D-4084-84C6-1235CDAFFB56", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Dev Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "name": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Dev Test Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Domain Name Registration ORG", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByCustomer.json new file mode 100644 index 000000000000..a9a46f5e494c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByCustomer.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "customerName": "Q7GV-UUVA-PJA-TGB" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "My Product", + "skuId": "0002", + "skuDescription": "Microsoft Azure Standard", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "name": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "Test Product", + "skuId": "0002", + "skuDescription": "Microsoft Azure Standard", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "name": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "BillingProfile1", + "customerId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/customers/Q7GV-UUVA-PJA-TGB", + "customerDisplayName": "Customer1", + "displayName": "Dev Test Product", + "skuId": "0001", + "skuDescription": "Domain Name Registration ORG", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByInvoiceSection.json new file mode 100644 index 000000000000..63d5a421af24 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsListByInvoiceSection.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31", + "billingProfileName": "ea36e548-1505-41db-bebc-46fff3d37998", + "invoiceSectionName": "Q7GV-UUVA-PJA-TGB" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/6b96d3f2-9008-4a9d-912f-f87744185aa3", + "name": "6b96d3f2-9008-4a9d-912f-f87744185aa3", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "My Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "name": "CD0BBD7A-461A-4D9A-9C59-EAE51A0D5D12", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Test Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/90D31600-D46D-4084-84C6-1235CDAFFB56", + "name": "90D31600-D46D-4084-84C6-1235CDAFFB56", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Dev Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Microsoft Azure Dev/Test", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProducts/9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "name": "9e90f86b-22fc-42f3-bfe2-0ac3e7c01d32", + "properties": { + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998", + "billingProfileDisplayName": "Contoso operations billing", + "displayName": "Dev Test Product", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/a1a9c77e-4cec-4a6c-a089-867d973a6074:a80d3b1f-c626-4e5e-82ed-1173bd91c838_2019-05-31/billingProfiles/ea36e548-1505-41db-bebc-46fff3d37998/invoiceSections/Q7GV-UUVA-PJA-TGB", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "skuId": "0001", + "skuDescription": "Domain Name Registration ORG", + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsUpdate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsUpdate.json new file mode 100644 index 000000000000..89f0a2e7f8cd --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/productsUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "productName": "11111111-1111-1111-1111-111111111111", + "parameters": { + "properties": { + "autoRenew": "On" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/products/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "properties": { + "autoRenew": "On", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "billingProfileDisplayName": "Billing Profile Display Name", + "displayName": "Product Display Name", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy", + "invoiceSectionDisplayName": "Invoice Section Display Name", + "productType": "Seat-Based Product Type", + "productTypeId": "XYZ56789", + "skuId": "0001", + "skuDescription": "SKU Description", + "purchaseDate": "2023-01-05T22:39:34.2606750Z", + "quantity": 1, + "status": "Active" + }, + "type": "Microsoft.Billing/billingAccounts/products" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersAccept.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersAccept.json new file mode 100644 index 000000000000..35a05c53d66a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersAccept.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "transferName": "aabb123", + "parameters": { + "properties": { + "productDetails": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "productName": "Azure subscription 1", + "skuDescription": "MS-AZR-0017G", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "productName": "Reservation name", + "skuDescription": "Standard_D2s_v3;VirtualMachines;P1Y", + "transferStatus": "InProgress" + } + ] + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersDecline.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersDecline.json new file mode 100644 index 000000000000..87f959476250 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersDecline.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "transferName": "aabb123" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "Declined", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersGet.json new file mode 100644 index 000000000000..3ff79fd49a41 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "transferName": "aabb123" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "productName": "Azure subscription 1", + "skuDescription": "MS-AZR-0017G", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "productName": "Reservation name", + "skuDescription": "Standard_D2s_v3;VirtualMachines;P1Y", + "transferStatus": "InProgress" + } + ] + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersList.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersList.json new file mode 100644 index 000000000000..7af1664d4fab --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "transferName": "aabb123" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "productName": "Azure subscription 1", + "skuDescription": "MS-AZR-0017G", + "transferStatus": "InProgress" + }, + { + "productType": "ReservedInstance", + "productId": "reservedInstanceId", + "productName": "Reservation name", + "skuDescription": "Standard_D2s_v3;VirtualMachines;P1Y", + "transferStatus": "InProgress" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersValidate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersValidate.json new file mode 100644 index 000000000000..d5d265bcccaa --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/recipientTransfersValidate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "transferName": "aabb123", + "parameters": { + "properties": { + "productDetails": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "productId": "subscriptionId", + "status": "Failed", + "results": [ + { + "level": "Error", + "code": "NotIntendedRecipient", + "message": "Intended recipient is different." + } + ] + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccount.json new file mode 100644 index 000000000000..b91f10f7472a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccount.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "reservationOrderId": "20000000-0000-0000-0000-000000000000", + "reservationId": "30000000-0000-0000-0000-000000000000", + "$expand": "renewProperties" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders/reservations", + "location": "westus", + "etag": 15, + "sku": { + "name": "Standard_DS1_v2" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "reservedResourceType": "VirtualMachines", + "userFriendlyRenewState": "On", + "skuDescription": "Reserved VM Instance, Standard_DS1_v2, US West, 3 Years", + "renew": true, + "archived": false, + "quantity": 1, + "appliedScopeType": "Shared", + "displayName": "VM_RI_11-24-2021_22-30", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Shared", + "expiryDateTime": "2024-11-25T06:34:12.9266987Z", + "purchaseDateTime": "2021-11-25T06:31:18.3925493Z", + "benefitStartTime": "2021-11-25T06:34:12.9266987Z", + "lastUpdatedDateTime": "2023-01-24T01:46:05.5344318Z", + "expiryDate": "2024-11-25", + "purchaseDate": "2021-11-25", + "effectiveDateTime": "2023-01-24T01:46:05.4250511Z", + "instanceFlexibility": "On", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 7, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + } + ] + }, + "billingPlan": "Monthly", + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "productCode": "20000000-0000-0000-0000-000000000005", + "renewProperties": { + "purchaseProperties": { + "sku": { + "name": "Standard_DS1_v2" + }, + "location": "westus", + "properties": { + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "term": "P3Y", + "billingPlan": "Monthly", + "quantity": 1, + "displayName": "VM_RI_11-24-2021_22-30_renewed", + "appliedScopeType": "Shared", + "reservedResourceProperties": { + "instanceFlexibility": "On" + }, + "reservedResourceType": "VirtualMachines", + "instanceFlexibility": "On", + "renew": false + } + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + }, + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + } + } + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountManagementGroup.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountManagementGroup.json new file mode 100644 index 000000000000..8669024ec23d --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountManagementGroup.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "reservationOrderId": "20000000-0000-0000-0000-000000000000", + "reservationId": "30000000-0000-0000-0000-000000000000", + "$expand": "renewProperties" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders/reservations", + "location": "westus", + "etag": 21, + "sku": { + "name": "Standard_DS1_v2" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "appliedScopeProperties": { + "tenantId": "50000000-0000-0000-0000-000000000009", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/TestRg", + "displayName": "TestRg" + }, + "extendedStatusInfo": { + "statusCode": "NoBenefit", + "message": "The subscriptions utilizing the reservation were removed or transferred from this account and no longer receive the reservation benefit. You can cancel the reservation or transfer to the right account or create resources and subscriptions to map it to this reservation." + }, + "reservedResourceType": "VirtualMachines", + "userFriendlyRenewState": "On", + "skuDescription": "Reserved VM Instance, Standard_DS1_v2, US West, 3 Years", + "renew": true, + "archived": false, + "quantity": 1, + "appliedScopeType": "ManagementGroup", + "displayName": "VM_RI_11-24-2021_22-30", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "NoBenefit", + "userFriendlyAppliedScopeType": "ManagementGroup", + "expiryDateTime": "2024-11-25T06:34:12.9266987Z", + "purchaseDateTime": "2021-11-25T06:31:18.3925493Z", + "benefitStartTime": "2021-11-25T06:34:12.9266987Z", + "lastUpdatedDateTime": "2023-01-26T01:19:32.0697120Z", + "expiryDate": "2024-11-25", + "purchaseDate": "2021-11-25", + "effectiveDateTime": "2023-01-26T01:19:31.9916066Z", + "instanceFlexibility": "On", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + } + ] + }, + "billingPlan": "Monthly", + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "productCode": "20000000-0000-0000-0000-000000000005", + "renewProperties": { + "purchaseProperties": { + "sku": { + "name": "Standard_DS1_v2" + }, + "location": "westus", + "properties": { + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "term": "P3Y", + "billingPlan": "Monthly", + "quantity": 1, + "displayName": "VM_RI_11-24-2021_22-30_renewed", + "appliedScopeType": "ManagementGroup", + "reservedResourceProperties": { + "instanceFlexibility": "On" + }, + "reservedResourceType": "VirtualMachines", + "instanceFlexibility": "On", + "renew": false, + "appliedScopeProperties": { + "tenantId": "50000000-0000-0000-0000-000000000009", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/TestRg" + } + } + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + }, + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + } + } + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountSingleResourceGroup.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountSingleResourceGroup.json new file mode 100644 index 000000000000..b1e70ee940b6 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountSingleResourceGroup.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "reservationOrderId": "20000000-0000-0000-0000-000000000000", + "reservationId": "30000000-0000-0000-0000-000000000000", + "$expand": "renewProperties" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders/reservations", + "location": "westus", + "etag": 23, + "sku": { + "name": "Standard_DS1_v2" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "appliedScopeProperties": { + "resourceGroupId": "/subscriptions/30000000-0000-0000-0000-000000000009/resourcegroups/fastpathtesting_20210915", + "displayName": "fastpathtesting_20210915" + }, + "reservedResourceType": "VirtualMachines", + "userFriendlyRenewState": "On", + "skuDescription": "Reserved VM Instance, Standard_DS1_v2, US West, 3 Years", + "renew": true, + "archived": false, + "quantity": 1, + "appliedScopeType": "Single", + "displayName": "VM_RI_11-24-2021_22-30", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "ResourceGroup", + "expiryDateTime": "2024-11-25T06:34:12.9266987Z", + "purchaseDateTime": "2021-11-25T06:31:18.3925493Z", + "benefitStartTime": "2021-11-25T06:34:12.9266987Z", + "lastUpdatedDateTime": "2023-01-26T01:21:47.3561106Z", + "expiryDate": "2024-11-25", + "purchaseDate": "2021-11-25", + "effectiveDateTime": "2023-01-26T01:21:47.2936116Z", + "instanceFlexibility": "On", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + } + ] + }, + "billingPlan": "Monthly", + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "productCode": "20000000-0000-0000-0000-000000000005", + "renewProperties": { + "purchaseProperties": { + "sku": { + "name": "Standard_DS1_v2" + }, + "location": "westus", + "properties": { + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "term": "P3Y", + "billingPlan": "Monthly", + "quantity": 1, + "displayName": "VM_RI_11-24-2021_22-30_renewed", + "appliedScopes": [ + "/subscriptions/30000000-0000-0000-0000-000000000009/resourcegroups/fastpathtesting_20210915" + ], + "appliedScopeType": "Single", + "reservedResourceProperties": { + "instanceFlexibility": "On" + }, + "reservedResourceType": "VirtualMachines", + "instanceFlexibility": "On", + "renew": false + } + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + }, + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + } + } + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountSingleScope.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountSingleScope.json new file mode 100644 index 000000000000..1b7271d06105 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationGetByBillingAccountSingleScope.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "reservationOrderId": "20000000-0000-0000-0000-000000000000", + "reservationId": "30000000-0000-0000-0000-000000000000", + "$expand": "renewProperties" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders/reservations", + "location": "westus", + "etag": 19, + "sku": { + "name": "Standard_DS1_v2" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "appliedScopeProperties": { + "subscriptionId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "displayName": "Azure subscription 1" + }, + "reservedResourceType": "VirtualMachines", + "userFriendlyRenewState": "On", + "skuDescription": "Reserved VM Instance, Standard_DS1_v2, US West, 3 Years", + "renew": true, + "archived": false, + "quantity": 1, + "appliedScopeType": "Single", + "displayName": "VM_RI_11-24-2021_22-30", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Single", + "expiryDateTime": "2024-11-25T06:34:12.9266987Z", + "purchaseDateTime": "2021-11-25T06:31:18.3925493Z", + "benefitStartTime": "2021-11-25T06:34:12.9266987Z", + "lastUpdatedDateTime": "2023-01-26T01:14:18.6057756Z", + "expiryDate": "2024-11-25", + "purchaseDate": "2021-11-25", + "effectiveDateTime": "2023-01-26T01:14:18.558909Z", + "instanceFlexibility": "Off", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + } + ] + }, + "billingPlan": "Monthly", + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "productCode": "20000000-0000-0000-0000-000000000005", + "renewProperties": { + "purchaseProperties": { + "sku": { + "name": "Standard_DS1_v2" + }, + "location": "westus", + "properties": { + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "term": "P3Y", + "billingPlan": "Monthly", + "quantity": 1, + "displayName": "VM_RI_11-24-2021_22-30_renewed", + "appliedScopes": [ + "/subscriptions/30000000-0000-0000-0000-000000000009" + ], + "appliedScopeType": "Single", + "reservedResourceProperties": { + "instanceFlexibility": "Off" + }, + "reservedResourceType": "VirtualMachines", + "instanceFlexibility": "Off", + "renew": false + } + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + }, + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + } + } + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrderGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrderGetByBillingAccount.json new file mode 100644 index 000000000000..eecfeafaaeed --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrderGetByBillingAccount.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "reservationOrderId": "20000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders", + "etag": 27, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "originalQuantity": 1, + "requestDateTime": "2021-11-25T06:31:18.3925493Z", + "billingPlan": "Monthly", + "reservations": [ + { + "id": "/providers/Microsoft.Capacity/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/20000000-0000-0000-0000-000000000001" + } + ], + "term": "P3Y", + "displayName": "VM_RI_11-24-2021_22-30", + "createdDateTime": "2021-11-25T06:34:13.9736776Z", + "benefitStartTime": "2021-11-25T06:34:12.9266987Z", + "provisioningState": "Succeeded", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-AAAA-AAA-AAA", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expiryDateTime": "2024-11-25T06:34:12.9266987Z", + "productCode": "20000000-0000-0000-0000-000000000005" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrderGetByBillingAccountWithExpandPlanInformation.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrderGetByBillingAccountWithExpandPlanInformation.json new file mode 100644 index 000000000000..2ed1a953b092 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrderGetByBillingAccountWithExpandPlanInformation.json @@ -0,0 +1,409 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "reservationOrderId": "20000000-0000-0000-0000-000000000000", + "$expand": "schedule" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders", + "etag": 26, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "originalQuantity": 1, + "requestDateTime": "2021-11-25T06:31:18.3925493Z", + "billingPlan": "Monthly", + "reservations": [ + { + "id": "/providers/Microsoft.Capacity/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/20000000-0000-0000-0000-000000000001" + } + ], + "term": "P3Y", + "displayName": "VM_RI_11-24-2021_22-30", + "createdDateTime": "2021-11-25T06:34:13.9736776Z", + "benefitStartTime": "2021-11-25T06:34:12.9266987Z", + "provisioningState": "Succeeded", + "planInformation": { + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + }, + "startDate": "2021-11-25", + "nextPaymentDueDate": "2023-01-25", + "transactions": [ + { + "dueDate": "2021-11-25", + "paymentDate": "2021-11-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2021-12-25", + "paymentDate": "2021-12-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-01-25", + "paymentDate": "2022-01-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-02-25", + "paymentDate": "2022-02-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-03-25", + "paymentDate": "2022-03-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-04-25", + "paymentDate": "2022-04-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-05-25", + "paymentDate": "2022-05-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-06-25", + "paymentDate": "2022-06-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-07-25", + "paymentDate": "2022-07-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-08-25", + "paymentDate": "2022-08-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-09-25", + "paymentDate": "2022-09-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-10-25", + "paymentDate": "2022-10-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-11-25", + "paymentDate": "2022-11-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2022-12-25", + "paymentDate": "2022-12-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Completed" + }, + { + "dueDate": "2023-01-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-02-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-03-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-04-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-05-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-06-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-07-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-08-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-09-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-10-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-11-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-12-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-01-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-02-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-03-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-04-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-05-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-06-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-07-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-08-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-09-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-10-25", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 19.88 + }, + "status": "Scheduled" + } + ] + }, + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-AAAA-AAA-AAA", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expiryDateTime": "2024-11-25T06:34:12.9266987Z", + "productCode": "20000000-0000-0000-0000-000000000005" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrdersListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrdersListByBillingAccount.json new file mode 100644 index 000000000000..0e605d2e3c11 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationOrdersListByBillingAccount.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/400000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders", + "etag": 10, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "originalQuantity": 1, + "requestDateTime": "2021-08-03T21:23:47.9090964Z", + "billingPlan": "Upfront", + "reservations": [ + { + "id": "/providers/Microsoft.Capacity/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/20000000-0000-0000-0000-000000000001" + } + ], + "term": "P3Y", + "displayName": "SUSE_Plan_08-03-2021_14-22", + "createdDateTime": "2021-08-03T21:26:50.7784836Z", + "benefitStartTime": "2021-08-03T21:26:48.5128969Z", + "provisioningState": "Succeeded", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/400000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-AAAA-AAA-AAA", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/400000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expiryDateTime": "2024-08-03T21:26:48.5128969Z", + "productCode": "20000000-0000-0000-0000-000000000005" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationUpdateByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationUpdateByBillingAccount.json new file mode 100644 index 000000000000..6f9f5adf1c91 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationUpdateByBillingAccount.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "reservationOrderId": "20000000-0000-0000-0000-000000000000", + "reservationId": "30000000-0000-0000-0000-000000000000", + "body": { + "properties": { + "displayName": "NewName" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders/reservations", + "location": "westus", + "etag": 15, + "sku": { + "name": "Standard_DS1_v2" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "reservedResourceType": "VirtualMachines", + "userFriendlyRenewState": "On", + "skuDescription": "Reserved VM Instance, Standard_DS1_v2, US West, 3 Years", + "renew": true, + "archived": false, + "quantity": 1, + "appliedScopeType": "Shared", + "displayName": "NewName", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Shared", + "expiryDateTime": "2024-11-25T06:34:12.9266987Z", + "purchaseDateTime": "2021-11-25T06:31:18.3925493Z", + "benefitStartTime": "2021-11-25T06:34:12.9266987Z", + "lastUpdatedDateTime": "2023-01-24T01:46:05.5344318Z", + "expiryDate": "2024-11-25", + "purchaseDate": "2021-11-25", + "effectiveDateTime": "2023-01-24T01:46:05.4250511Z", + "instanceFlexibility": "On", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 7, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + } + ] + }, + "billingPlan": "Monthly", + "productCode": "20000000-0000-0000-0000-000000000005", + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "renewProperties": { + "purchaseProperties": { + "sku": { + "name": "Standard_DS1_v2" + }, + "location": "westus", + "properties": { + "billingScopeId": "/subscriptions/30000000-0000-0000-0000-000000000009", + "term": "P3Y", + "billingPlan": "Monthly", + "quantity": 1, + "displayName": "VM_RI_11-24-2021_22-30_renewed", + "appliedScopeType": "Shared", + "reservedResourceProperties": { + "instanceFlexibility": "On" + }, + "reservedResourceType": "VirtualMachines", + "instanceFlexibility": "On", + "renew": false + } + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + }, + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 715.68 + } + } + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/30000000-0000-0000-0000-000000000000?api-version=2024-04-01", + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/20000000-0000-0000-0000-000000000000/reservations/30000000-0000-0000-0000-000000000000?api-version=2024-04-01", + "Retry-After": 120 + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsGetFromOrderByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsGetFromOrderByBillingAccount.json new file mode 100644 index 000000000000..b3f4cdd4ef15 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsGetFromOrderByBillingAccount.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "reservationOrderId": "20000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/4973e1de-a829-5c64-4fef-0a692e2b3108:1970c5da-0aa4-46fd-a917-4772f9a17978_2019-05-31/reservationOrders/99f340d1-6db4-41b4-b469-cfc499716973/reservations/a7d70646-b848-4498-8093-5938128b225c", + "name": "a7d70646-b848-4498-8093-5938128b225c", + "type": "microsoft.billing/billingAccounts/reservationOrders/reservations", + "location": "westus", + "etag": 15, + "sku": { + "name": "Standard_DS1_v2" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "reservedResourceType": "VirtualMachines", + "userFriendlyRenewState": "On", + "skuDescription": "Reserved VM Instance, Standard_DS1_v2, US West, 3 Years", + "renew": true, + "archived": false, + "quantity": 1, + "appliedScopeType": "Shared", + "displayName": "VM_RI_11-24-2021_22-30", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Shared", + "expiryDateTime": "2024-11-25T06:34:12.9266987Z", + "purchaseDateTime": "2021-11-25T06:31:18.3925493Z", + "benefitStartTime": "2021-11-25T06:34:12.9266987Z", + "lastUpdatedDateTime": "2023-01-24T01:46:05.5344318Z", + "expiryDate": "2024-11-25", + "purchaseDate": "2021-11-25", + "effectiveDateTime": "2023-01-24T01:46:05.4250511Z", + "instanceFlexibility": "On", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 7, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + } + ] + }, + "billingPlan": "Monthly", + "billingScopeId": "/subscriptions/eef82110-c91b-4395-9420-fcfcbefc5a47", + "productCode": "20000000-0000-0000-0000-000000000005" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsListByBillingAccount.json new file mode 100644 index 000000000000..106f7d43b81e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsListByBillingAccount.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "$filter": "properties/reservedResourceType eq 'VirtualMachineSoftware' and properties/billingProfileId eq '/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-AAAA-AAA-AAA'", + "$orderby": "properties/userFriendlyAppliedScopeType asc", + "refreshsummary": "true", + "selectedState": "Succeeded" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/00000000-0000-0000-0000-000000000001/reservations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders/reservations", + "location": "global", + "sku": { + "name": "mock_sku" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "reservedResourceType": "VirtualMachineSoftware", + "userFriendlyRenewState": "Off", + "skuDescription": "Sku description", + "renew": false, + "archived": false, + "quantity": 1, + "appliedScopeType": "Shared", + "displayName": "VirtualMachineSoftware_01-18-2022_13-51", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Shared", + "expiryDateTime": "2025-01-18T21:54:31.0741034Z", + "purchaseDateTime": "2022-01-18T21:51:29.9063671Z", + "benefitStartTime": "2022-01-18T21:54:31.0741034Z", + "lastUpdatedDateTime": "0001-01-01T00:00:00.0000000", + "expiryDate": "2025-01-18", + "purchaseDate": "2022-01-18", + "effectiveDateTime": "0001-01-01T00:00:00Z", + "instanceFlexibility": "On", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 7, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + } + ] + }, + "billingPlan": "Monthly", + "billingScopeId": "/subscriptions/eef82110-c91b-4395-9420-fcfcbefc5a47", + "productCode": "20000000-0000-0000-0000-000000000005" + } + } + ], + "summary": { + "noBenefitCount": 0, + "warningCount": 0, + "succeededCount": 1, + "failedCount": 0, + "expiringCount": 0, + "expiredCount": 0, + "pendingCount": 0, + "cancelledCount": 0, + "processingCount": 0 + }, + "nextLink": null + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsListByBillingProfile.json new file mode 100644 index 000000000000..cd8277578734 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/reservationsListByBillingProfile.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "AAAA-AAAA-AAA-AAA", + "$filter": "properties/reservedResourceType eq 'VirtualMachineSoftware'", + "$orderby": "properties/userFriendlyAppliedScopeType asc", + "refreshsummary": "true", + "selectedState": "Succeeded" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/reservationOrders/00000000-0000-0000-0000-000000000001/reservations/00000000-0000-0000-0000-000000000000", + "name": "00000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/reservationOrders/reservations", + "location": "global", + "sku": { + "name": "mock_sku" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "reservedResourceType": "VirtualMachineSoftware", + "userFriendlyRenewState": "Off", + "skuDescription": "Sku description", + "renew": false, + "archived": false, + "quantity": 1, + "appliedScopeType": "Shared", + "displayName": "VirtualMachineSoftware_01-18-2022_13-51", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Shared", + "expiryDateTime": "2025-01-18T21:54:31.0741034Z", + "purchaseDateTime": "2022-01-18T21:51:29.9063671Z", + "benefitStartTime": "2022-01-18T21:54:31.0741034Z", + "lastUpdatedDateTime": "0001-01-01T00:00:00.0000000", + "expiryDate": "2025-01-18", + "purchaseDate": "2022-01-18", + "effectiveDateTime": "0001-01-01T00:00:00Z", + "instanceFlexibility": "On", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 7, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + } + ] + }, + "billingPlan": "Monthly", + "billingScopeId": "/subscriptions/eef82110-c91b-4395-9420-fcfcbefc5a47", + "productCode": "20000000-0000-0000-0000-000000000005" + } + } + ], + "summary": { + "noBenefitCount": 0, + "warningCount": 0, + "succeededCount": 1, + "failedCount": 0, + "expiringCount": 0, + "expiredCount": 0, + "pendingCount": 0, + "cancelledCount": 0, + "processingCount": 0 + }, + "nextLink": null + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByBillingAccount.json new file mode 100644 index 000000000000..531994f2ced4 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByBillingAccount.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleDefinitions/00000000-0000-0000-0000-000000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingRoleDefinitions/00000000-0000-0000-0000-000000000001", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingRoleAssignments" + } + ] + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/operationResults/resolveBillingRoleAssignments_10000000-0000-0000-0000-000000000001?api-version=2024-04-01", + "retry-after": "5" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByBillingProfile.json new file mode 100644 index 000000000000..00d296990c67 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByBillingProfile.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/00000000-0000-0000-0000-000000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/00000000-0000-0000-0000-000000000001", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/billingRoleAssignments" + } + ] + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/operationResults/resolveBillingRoleAssignments_10000000-0000-0000-0000-000000000001?api-version=2024-04-01", + "retry-after": "5" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByCustomer.json new file mode 100644 index 000000000000..ce4029b87bcf --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByCustomer.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "703ab484-dda2-4402-827b-a74513b61e2d" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleAssignments/30000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "30000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "c360d6f1-2709-476d-81bb-d075b213d9fc", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d", + "userEmailAddress": "foo@bar.com", + "principalTenantName": "Foo Bar", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleAssignments/30000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "30000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "principalTenantId": "c360d6f1-2709-476d-81bb-d075b213d9fc", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d", + "userEmailAddress": "foo@bar.com", + "principalTenantName": "Foo Bar", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/customers/billingRoleAssignments" + } + ] + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/xxxx-xxxx-xxx-xxx/customers/703ab484-dda2-4402-827b-a74513b61e2d/operationResults/resolveBillingRoleAssignments_10000000-0000-0000-0000-000000000001?api-version=2024-04-01", + "retry-after": "5" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByInvoiceSection.json new file mode 100644 index 000000000000..7561321c3cad --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/resolveBillingRoleAssignmentByInvoiceSection.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30", + "billingProfileName": "BKM6-54VH-BG7-PGB", + "invoiceSectionName": "xxxx-xxxx-xxx-xxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "name": "10000000-aaaa-bbbb-cccc-100000000000_6fd330f6-7d26-4aff-b9cf-7bd699f965b9", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleAssignments" + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleAssignments/10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "name": "10000000-aaaa-bbbb-cccc-100000000000_b1839933-b3ac-42ca-8112-d29c43f3ab47", + "properties": { + "createdOn": "2023-10-19T20:10:50.1028398Z", + "createdByPrincipalTenantId": "076915e7-de10-4323-bb34-a58c904068bb", + "createdByPrincipalId": "00000000-0000-0000-0000-000000000001", + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/billingRoleDefinitions/30000000-aaaa-bbbb-cccc-100000000000", + "scope": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx", + "principalType": "User" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/invoiceSections/billingRoleAssignments" + } + ] + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2018-09-30/billingProfiles/BKM6-54VH-BG7-PGB/invoiceSections/xxxx-xxxx-xxx-xxx/operationResults/resolveBillingRoleAssignments_10000000-0000-0000-0000-000000000001?api-version=2024-04-01", + "retry-after": "5" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanGetByBillingAccount.json new file mode 100644 index 000000000000..f795f7965c06 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanGetByBillingAccount.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "savingsPlanOrderId": "20000000-0000-0000-0000-000000000000", + "savingsPlanId": "30000000-0000-0000-0000-000000000000", + "api-version": "2024-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders/savingsPlans", + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "billingScopeId": "/subscriptions/50000000-0000-0000-0000-000000000000", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "appliedScopeProperties": { + "tenantId": "70000000-0000-0000-0000-000000000000", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/TestRg", + "displayName": "TestRg" + }, + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 0.001 + }, + "renew": false, + "appliedScopeType": "ManagementGroup", + "displayName": "SP1", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "NoBenefit", + "userFriendlyAppliedScopeType": "ManagementGroup", + "expiryDateTime": "2025-11-16T02:25:11.7183866Z", + "purchaseDateTime": "2022-11-16T02:23:21.3864783Z", + "benefitStartTime": "2022-11-16T02:25:11.7183866Z", + "effectiveDateTime": "2022-12-16T01:35:36.2909462Z", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + } + ] + } + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanGetExpandRenewPropertiesByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanGetExpandRenewPropertiesByBillingAccount.json new file mode 100644 index 000000000000..ff7f0a7116dd --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanGetExpandRenewPropertiesByBillingAccount.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "savingsPlanOrderId": "20000000-0000-0000-0000-000000000000", + "savingsPlanId": "30000000-0000-0000-0000-000000000000", + "api-version": "2024-04-01", + "$expand": "renewProperties" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders/savingsPlans", + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "billingScopeId": "/subscriptions/50000000-0000-0000-0000-000000000000", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "appliedScopeProperties": { + "tenantId": "70000000-0000-0000-0000-000000000000", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/TestRg", + "displayName": "TestRg" + }, + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 0.001 + }, + "renew": false, + "appliedScopeType": "ManagementGroup", + "displayName": "SP1", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "NoBenefit", + "userFriendlyAppliedScopeType": "ManagementGroup", + "expiryDateTime": "2025-11-16T02:25:11.7183866Z", + "purchaseDateTime": "2022-11-16T02:23:21.3864783Z", + "benefitStartTime": "2022-11-16T02:25:11.7183866Z", + "effectiveDateTime": "2022-12-16T01:35:36.2909462Z", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + } + ] + }, + "renewProperties": { + "purchaseProperties": { + "sku": { + "name": "Compute_Savings_Plan" + }, + "properties": { + "billingScopeId": "/subscriptions/50000000-0000-0000-0000-000000000000", + "term": "P3Y", + "billingPlan": "Monthly", + "displayName": "SP1_renewed", + "appliedScopeType": "ManagementGroup", + "appliedScopeProperties": { + "tenantId": "70000000-0000-0000-0000-000000000000", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/TestRg" + }, + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 0.001 + } + } + } + } + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderExpandedScheduleGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderExpandedScheduleGetByBillingAccount.json new file mode 100644 index 000000000000..19bb5664a9d2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderExpandedScheduleGetByBillingAccount.json @@ -0,0 +1,342 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "savingsPlanOrderId": "20000000-0000-0000-0000-000000000000", + "api-version": "2024-04-01", + "$expand": "schedule" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders", + "properties": { + "billingScopeId": "10000000-0000-0000-0000-000000000000", + "savingsPlans": [ + "/providers/Microsoft.BillingBenefits/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000" + ], + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "term": "P3Y", + "displayName": "SP1", + "benefitStartTime": "2023-01-20T02:36:22.3394755Z", + "provisioningState": "Succeeded", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expiryDateTime": "2026-01-20T02:36:22.3394755Z", + "planInformation": { + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 26.28 + }, + "startDate": "2023-01-20", + "nextPaymentDueDate": "2023-02-20", + "transactions": [ + { + "dueDate": "2023-01-20", + "paymentDate": "2023-01-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "billingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Completed" + }, + { + "dueDate": "2023-02-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-03-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-04-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-05-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-06-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-07-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-08-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-09-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-10-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-11-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2023-12-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-01-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-02-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-03-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-04-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-05-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-06-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-07-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-08-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-09-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-10-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-11-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2024-12-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-01-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-02-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-03-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-04-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-05-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-06-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-07-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-08-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-09-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-10-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-11-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + }, + { + "dueDate": "2025-12-20", + "pricingCurrencyTotal": { + "currencyCode": "USD", + "amount": 0.73 + }, + "status": "Scheduled" + } + ] + } + }, + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderGetByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderGetByBillingAccount.json new file mode 100644 index 000000000000..53ace62c439a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderGetByBillingAccount.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "savingsPlanOrderId": "20000000-0000-0000-0000-000000000000", + "api-version": "2024-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders", + "properties": { + "billingScopeId": "10000000-0000-0000-0000-000000000000", + "savingsPlans": [ + "/providers/Microsoft.BillingBenefits/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000" + ], + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "term": "P3Y", + "displayName": "SP1", + "benefitStartTime": "2023-01-20T02:36:22.3394755Z", + "provisioningState": "Succeeded", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expiryDateTime": "2026-01-20T02:36:22.3394755Z" + }, + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderListByBillingAccount.json new file mode 100644 index 000000000000..01cf057c2560 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanOrderListByBillingAccount.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "api-version": "2024-04-01", + "$filter": "properties/billingProfileId eq '/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD'", + "$orderby": "properties/displayName asc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders", + "properties": { + "billingScopeId": "10000000-0000-0000-0000-000000000000", + "savingsPlans": [ + "/providers/Microsoft.BillingBenefits/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000" + ], + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "term": "P3Y", + "displayName": "SP1", + "benefitStartTime": "2023-02-04T03:18:31.3072635Z", + "provisioningState": "Succeeded", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expiryDateTime": "2026-02-04T03:18:31.3072635Z" + }, + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000001", + "name": "20000000-0000-0000-0000-000000000001", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders", + "properties": { + "billingScopeId": "10000000-0000-0000-0000-000000000000", + "savingsPlans": [ + "/providers/Microsoft.BillingBenefits/savingsPlanOrders/20000000-0000-0000-0000-000000000001/savingsPlans/30000000-0000-0000-0000-000000000001" + ], + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "term": "P3Y", + "displayName": "SP2", + "benefitStartTime": "2023-02-04T03:22:19.7304330Z", + "provisioningState": "Succeeded", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "expiryDateTime": "2026-02-04T03:22:19.7304330Z" + }, + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanUpdateByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanUpdateByBillingAccount.json new file mode 100644 index 000000000000..9cb852ef892b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanUpdateByBillingAccount.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "savingsPlanOrderId": "20000000-0000-0000-0000-000000000000", + "savingsPlanId": "30000000-0000-0000-0000-000000000000", + "api-version": "2024-04-01", + "body": { + "properties": { + "displayName": "sp_newName", + "appliedScopeType": "ManagementGroup", + "appliedScopeProperties": { + "tenantId": "80000000-0000-0000-0000-000000000000", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/mg1" + }, + "renew": true, + "renewProperties": { + "purchaseProperties": { + "sku": { + "name": "Compute_Savings_Plan" + }, + "properties": { + "billingScopeId": "/subscriptions/50000000-0000-0000-0000-000000000000", + "term": "P3Y", + "appliedScopeType": "ManagementGroup", + "appliedScopeProperties": { + "tenantId": "80000000-0000-0000-0000-000000000000", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/mg1" + }, + "displayName": "sp_newName_renewed", + "billingPlan": "P1M", + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 0.001 + } + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders/savingsPlans", + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "billingScopeId": "/subscriptions/50000000-0000-0000-0000-000000000000", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "appliedScopeProperties": { + "tenantId": "80000000-0000-0000-0000-000000000000", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/mg1", + "displayName": "mg1" + }, + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 0.001 + }, + "renew": true, + "appliedScopeType": "ManagementGroup", + "displayName": "sp_newName", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "ManagementGroup", + "expiryDateTime": "2026-02-04T03:18:31.3072635Z", + "purchaseDateTime": "2023-02-04T03:16:38.9065505Z", + "benefitStartTime": "2023-02-04T03:18:31.3072635Z", + "effectiveDateTime": "2023-02-04T04:30:49.1982989Z", + "utilization": { + "aggregates": [] + } + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000?api-version=2022-11-01", + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000?api-version=2022-11-01", + "Retry-After": 120 + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanValidateUpdateByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanValidateUpdateByBillingAccount.json new file mode 100644 index 000000000000..6722c9f82a1a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlanValidateUpdateByBillingAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "savingsPlanOrderId": "20000000-0000-0000-0000-000000000000", + "savingsPlanId": "30000000-0000-0000-0000-000000000000", + "api-version": "2024-04-01", + "body": { + "benefits": [ + { + "appliedScopeType": "Single", + "appliedScopeProperties": { + "subscriptionId": "/subscriptions/50000000-0000-0000-0000-000000000000" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "benefits": [ + { + "valid": true + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlansListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlansListByBillingAccount.json new file mode 100644 index 000000000000..9c2e583b6b4b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlansListByBillingAccount.json @@ -0,0 +1,275 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "api-version": "2024-04-01", + "$filter": "properties/billingProfileId eq '/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD'", + "$orderby": "properties/displayName asc", + "refreshSummary": "true", + "selectedState": "Succeeded", + "take": "3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders/savingsPlans", + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "billingScopeId": "/subscriptions/10000000-0000-0000-0000-000000000000", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 10.0 + }, + "renew": false, + "appliedScopeType": "Shared", + "displayName": "SP1", + "provisioningState": "Succeeded", + "term": "P1Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Shared", + "expiryDateTime": "2023-12-16T02:17:03.7396152Z", + "purchaseDateTime": "2022-12-16T02:14:58.2304134Z", + "benefitStartTime": "2022-12-16T02:17:03.7396152Z", + "effectiveDateTime": "2022-12-16T02:17:04.9896661Z", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + } + ] + } + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000001/savingsPlans/30000000-0000-0000-0000-000000000001", + "name": "30000000-0000-0000-0000-000000000001", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders/savingsPlans", + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "billingScopeId": "/subscriptions/10000000-0000-0000-0000-000000000000", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "appliedScopeProperties": { + "tenantId": "50000000-0000-0000-0000-000000000000", + "managementGroupId": "/providers/Microsoft.Management/managementGroups/TestRg", + "displayName": "TestRg" + }, + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 10.0 + }, + "renew": false, + "appliedScopeType": "ManagementGroup", + "displayName": "SP2", + "provisioningState": "Succeeded", + "term": "P1Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "ManagementGroup", + "expiryDateTime": "2023-12-16T02:22:22.7254795Z", + "purchaseDateTime": "2022-12-16T02:20:23.4733076Z", + "benefitStartTime": "2022-12-16T02:22:22.7254795Z", + "effectiveDateTime": "2022-12-16T02:22:24.5536191Z", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0.0, + "valueUnit": "percentage" + } + ] + } + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000002/savingsPlans/30000000-0000-0000-0000-000000000002", + "name": "30000000-0000-0000-0000-000000000002", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders/savingsPlans", + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "billingScopeId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingSubscriptions/10000000-0000-0000-0000-000000000000", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "appliedScopeProperties": { + "subscriptionId": "/subscriptions/10000000-0000-0000-0000-000000000000", + "displayName": "Azure subscription 1" + }, + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 0.025 + }, + "renew": true, + "appliedScopeType": "Single", + "displayName": "SP3", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Single", + "expiryDateTime": "2025-10-14T21:18:55.2960613Z", + "purchaseDateTime": "2022-10-14T21:16:57.2347688Z", + "benefitStartTime": "2022-10-14T21:18:55.2960613Z", + "effectiveDateTime": "2022-11-07T23:54:43.8233243Z", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 66.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 66.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 65.52, + "valueUnit": "percentage" + } + ] + } + } + }, + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000003/savingsPlans/30000000-0000-0000-0000-000000000003", + "name": "30000000-0000-0000-0000-000000000003", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders/savingsPlans", + "sku": { + "name": "Compute_Savings_Plan" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "billingScopeId": "/subscriptions/10000000-0000-0000-0000-000000000000", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingPlan": "P1M", + "productCode": "20000000-0000-0000-0000-000000000005", + "appliedScopeProperties": { + "resourceGroupId": "/subscriptions/10000000-0000-0000-0000-000000000000/resourcegroups/testRG", + "displayName": "testRG" + }, + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 0.001 + }, + "renew": false, + "appliedScopeType": "Single", + "displayName": "SP4", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "ResourceGroup", + "expiryDateTime": "2025-11-08T00:00:06.3636747Z", + "purchaseDateTime": "2022-11-07T23:57:58.2428677Z", + "benefitStartTime": "2022-11-08T00:00:06.3636747Z", + "effectiveDateTime": "2022-11-30T21:18:12.1967323Z", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 100.0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 100.0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 100.0, + "valueUnit": "percentage" + } + ] + } + } + } + ], + "summary": { + "noBenefitCount": 0, + "warningCount": 0, + "succeededCount": 3, + "failedCount": 0, + "expiringCount": 0, + "expiredCount": 0, + "pendingCount": 0, + "cancelledCount": 0, + "processingCount": 0 + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlansListBySavingsPlanOrders.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlansListBySavingsPlanOrders.json new file mode 100644 index 000000000000..1652634e61b3 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/savingsPlansListBySavingsPlanOrders.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "savingsPlanOrderId": "20000000-0000-0000-0000-000000000000", + "api-version": "2024-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/savingsPlanOrders/20000000-0000-0000-0000-000000000000/savingsPlans/30000000-0000-0000-0000-000000000000", + "name": "30000000-0000-0000-0000-000000000000", + "type": "microsoft.billing/billingAccounts/savingsPlanOrders/savingsPlans", + "sku": { + "name": "Compute_Savings_Plan" + }, + "properties": { + "billingScopeId": "/subscriptions/10000000-0000-0000-0000-000000000000", + "billingAccountId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/AAAA-BBBB-CCC-DDD", + "billingPlan": "P1M", + "commitment": { + "grain": "Hourly", + "currencyCode": "USD", + "amount": 0.001 + }, + "renew": false, + "appliedScopeType": "Shared", + "displayName": "SP1", + "provisioningState": "Succeeded", + "term": "P3Y", + "displayProvisioningState": "Succeeded", + "userFriendlyAppliedScopeType": "Shared", + "expiryDateTime": "2026-01-20T02:36:22.3394755Z", + "purchaseDateTime": "2023-01-20T02:34:38.1261695Z", + "benefitStartTime": "2023-01-20T02:36:22.3394755Z", + "effectiveDateTime": "2023-01-20T02:36:25.0894669Z", + "utilization": { + "trend": "SAME", + "aggregates": [ + { + "grain": 1.0, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 7.0, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + }, + { + "grain": 30.0, + "grainUnit": "days", + "value": 0, + "valueUnit": "percentage" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionSummaryGetByInvoice.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionSummaryGetByInvoice.json new file mode 100644 index 000000000000..127cd89f036c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionSummaryGetByInvoice.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "invoiceName": "G123456789" + }, + "responses": { + "200": { + "body": { + "azureCreditApplied": 100, + "billingCurrency": "USD", + "consumptionCommitmentDecremented": 1000, + "subTotal": 1000, + "tax": 500, + "total": 5400 + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsDownloadByInvoice.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsDownloadByInvoice.json new file mode 100644 index 000000000000..f10fbe0fe886 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsDownloadByInvoice.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "invoiceName": "G123456789" + }, + "responses": { + "200": { + "body": { + "expiryTime": "2023-02-16T17:32:28Z", + "url": "https://myaccount.blob.core.windows.net/invoices/1383724_invoice.csv?sv=2019-02-02&sr=b&sp=r" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/operationResults/transactionsDownload_11111111-1111-1111-1111-111111111111?api-version=2024-04-01", + "Retry-After": "10" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByBillingProfile.json new file mode 100644 index 000000000000..e206a7ddca28 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByBillingProfile.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "periodStartDate": "2024-04-01", + "periodEndDate": "2023-05-30", + "type": "Billed", + "search": "storage", + "filter": "properties/date gt '2020-10-01'", + "orderby": "properties/date" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/transactions/41000000-0000-0000-0000-000000000000", + "name": "41000000-0000-0000-0000-000000000000", + "properties": { + "azureCreditApplied": { + "currency": "USD", + "value": 2000 + }, + "billingCurrency": "USD", + "billingProfileDisplayName": "Contoso operations billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "consumptionCommitmentDecremented": { + "currency": "USD", + "value": 100 + }, + "date": "2023-05-01T00:00:00Z", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10 + }, + "exchangeRate": 1, + "invoice": "G123456789", + "invoiceId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/22000000-0000-0000-0000-000000000000", + "marketPrice": { + "currency": "USD", + "value": 20 + }, + "partNumber": "0001", + "pricingCurrency": "USD", + "productDescription": "Standard D1, US West 3", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "quantity": 1, + "servicePeriodStartDate": "2023-05-01T00:00:00Z", + "servicePeriodEndDate": "2023-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500 + }, + "tax": { + "currency": "USD", + "value": 500 + }, + "transactionAmount": { + "currency": "USD", + "value": 5000 + }, + "transactionType": "Purchase", + "units": 11.25, + "unitOfMeasure": "1 Minute", + "unitType": "1 Runtime Minute" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions" + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/transactions/51000000-0000-0000-0000-000000000000", + "name": "51000000-0000-0000-0000-000000000000", + "properties": { + "azureCreditApplied": { + "currency": "USD", + "value": 20 + }, + "billingCurrency": "USD", + "billingProfileDisplayName": "Contoso operations billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "consumptionCommitmentDecremented": { + "currency": "USD", + "value": 50 + }, + "date": "2024-04-01T00:00:00Z", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10 + }, + "exchangeRate": 1, + "invoice": "pending", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/22000000-0000-0000-0000-000000000000", + "marketPrice": { + "currency": "USD", + "value": 20 + }, + "partNumber": "0002", + "pricingCurrency": "USD", + "productDescription": "Standard Support", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "quantity": 1, + "servicePeriodStartDate": "2023-05-01T00:00:00Z", + "servicePeriodEndDate": "2023-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45 + }, + "tax": { + "currency": "USD", + "value": 5 + }, + "transactionAmount": { + "currency": "USD", + "value": 50 + }, + "transactionType": "Cancel", + "units": 1.25, + "unitOfMeasure": "1 Minute", + "unitType": "1 Runtime Minute" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByCustomer.json new file mode 100644 index 000000000000..57d8b1951da8 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByCustomer.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "customerName": "22000000-0000-0000-0000-000000000000", + "periodStartDate": "2024-04-01", + "periodEndDate": "2023-05-30", + "type": "Billed", + "search": "storage", + "filter": "properties/date gt '2020-10-01'", + "orderby": "properties/date" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/transactions/41000000-0000-0000-0000-000000000000", + "name": "41000000-0000-0000-0000-000000000000", + "properties": { + "azureCreditApplied": { + "currency": "USD", + "value": 2000 + }, + "billingCurrency": "USD", + "billingProfileDisplayName": "Contoso operations billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "consumptionCommitmentDecremented": { + "currency": "USD", + "value": 100 + }, + "customerDisplayName": "Contoso operations customer", + "customerId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/22000000-0000-0000-0000-000000000000", + "date": "2023-05-01T00:00:00Z", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10 + }, + "exchangeRate": 1, + "invoice": "G123456789", + "invoiceId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "marketPrice": { + "currency": "USD", + "value": 20 + }, + "partNumber": "0001", + "pricingCurrency": "USD", + "productDescription": "Standard D1, US West 3", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "quantity": 1, + "servicePeriodStartDate": "2023-05-01T00:00:00Z", + "servicePeriodEndDate": "2023-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500 + }, + "tax": { + "currency": "USD", + "value": 500 + }, + "transactionAmount": { + "currency": "USD", + "value": 5000 + }, + "transactionType": "Purchase", + "units": 11.25, + "unitOfMeasure": "1 Minute", + "unitType": "1 Runtime Minute" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions" + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/transactions/51000000-0000-0000-0000-000000000000", + "name": "51000000-0000-0000-0000-000000000000", + "properties": { + "azureCreditApplied": { + "currency": "USD", + "value": 20 + }, + "billingCurrency": "USD", + "billingProfileDisplayName": "Contoso operations billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "consumptionCommitmentDecremented": { + "currency": "USD", + "value": 50 + }, + "customerDisplayName": "Contoso operations customer", + "customerId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/customers/22000000-0000-0000-0000-000000000000", + "date": "2024-04-01T00:00:00Z", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10 + }, + "exchangeRate": 1, + "invoice": "pending", + "marketPrice": { + "currency": "USD", + "value": 20 + }, + "partNumber": "0002", + "pricingCurrency": "USD", + "productDescription": "Standard Support", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "quantity": 1, + "servicePeriodStartDate": "2023-05-01T00:00:00Z", + "servicePeriodEndDate": "2023-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45 + }, + "tax": { + "currency": "USD", + "value": 5 + }, + "transactionAmount": { + "currency": "USD", + "value": 50 + }, + "transactionType": "Cancel", + "units": 1.25, + "unitOfMeasure": "1 Minute", + "unitType": "1 Runtime Minute" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByInvoice.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByInvoice.json new file mode 100644 index 000000000000..824555238153 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByInvoice.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "invoiceName": "G123456789" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/transactions/41000000-0000-0000-0000-000000000000", + "name": "41000000-0000-0000-0000-000000000000", + "properties": { + "azureCreditApplied": { + "currency": "USD", + "value": 2000 + }, + "billingCurrency": "USD", + "billingProfileDisplayName": "Contoso operations billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "consumptionCommitmentDecremented": { + "currency": "USD", + "value": 100 + }, + "date": "2023-05-01T00:00:00Z", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10 + }, + "exchangeRate": 1, + "invoice": "G123456789", + "invoiceId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/22000000-0000-0000-0000-000000000000", + "marketPrice": { + "currency": "USD", + "value": 20 + }, + "partNumber": "0001", + "pricingCurrency": "USD", + "productDescription": "Standard D1, US West 3", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "quantity": 1, + "servicePeriodStartDate": "2023-05-01T00:00:00Z", + "servicePeriodEndDate": "2023-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500 + }, + "tax": { + "currency": "USD", + "value": 500 + }, + "transactionAmount": { + "currency": "USD", + "value": 5000 + }, + "transactionType": "Purchase", + "units": 11.25, + "unitOfMeasure": "1 Minute", + "unitType": "1 Runtime Minute" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions" + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/transactions/51000000-0000-0000-0000-000000000000", + "name": "51000000-0000-0000-0000-000000000000", + "properties": { + "azureCreditApplied": { + "currency": "USD", + "value": 20 + }, + "billingCurrency": "USD", + "billingProfileDisplayName": "Contoso operations billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "consumptionCommitmentDecremented": { + "currency": "USD", + "value": 50 + }, + "date": "2024-04-01T00:00:00Z", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10 + }, + "exchangeRate": 1, + "invoice": "pending", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/22000000-0000-0000-0000-000000000000", + "marketPrice": { + "currency": "USD", + "value": 20 + }, + "partNumber": "0002", + "pricingCurrency": "USD", + "productDescription": "Standard Support", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "quantity": 1, + "servicePeriodStartDate": "2023-05-01T00:00:00Z", + "servicePeriodEndDate": "2023-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45 + }, + "tax": { + "currency": "USD", + "value": 5 + }, + "transactionAmount": { + "currency": "USD", + "value": 50 + }, + "transactionType": "Cancel", + "units": 1.25, + "unitOfMeasure": "1 Minute", + "unitType": "1 Runtime Minute" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByInvoiceSection.json new file mode 100644 index 000000000000..875c344770c5 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transactionsListByInvoiceSection.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "22000000-0000-0000-0000-000000000000", + "periodStartDate": "2024-04-01", + "periodEndDate": "2023-05-30", + "type": "Billed", + "search": "storage", + "filter": "properties/date gt '2020-10-01'", + "orderby": "properties/date" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/transactions/41000000-0000-0000-0000-000000000000", + "name": "41000000-0000-0000-0000-000000000000", + "properties": { + "azureCreditApplied": { + "currency": "USD", + "value": 2000 + }, + "billingCurrency": "USD", + "billingProfileDisplayName": "Contoso operations billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "consumptionCommitmentDecremented": { + "currency": "USD", + "value": 100 + }, + "date": "2023-05-01T00:00:00Z", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10 + }, + "exchangeRate": 1, + "invoice": "G123456789", + "invoiceId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/invoices/G123456789", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/22000000-0000-0000-0000-000000000000", + "marketPrice": { + "currency": "USD", + "value": 20 + }, + "partNumber": "0001", + "pricingCurrency": "USD", + "productDescription": "Standard D1, US West 3", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "quantity": 1, + "servicePeriodStartDate": "2023-05-01T00:00:00Z", + "servicePeriodEndDate": "2023-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500 + }, + "tax": { + "currency": "USD", + "value": 500 + }, + "transactionAmount": { + "currency": "USD", + "value": 5000 + }, + "transactionType": "Purchase", + "units": 11.25, + "unitOfMeasure": "1 Minute", + "unitType": "1 Runtime Minute" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions" + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/BillingProfiles/xxxx-xxxx-xxx-xxx/transactions/51000000-0000-0000-0000-000000000000", + "name": "51000000-0000-0000-0000-000000000000", + "properties": { + "azureCreditApplied": { + "currency": "USD", + "value": 20 + }, + "billingCurrency": "USD", + "billingProfileDisplayName": "Contoso operations billing", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx", + "consumptionCommitmentDecremented": { + "currency": "USD", + "value": 50 + }, + "date": "2024-04-01T00:00:00Z", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10 + }, + "exchangeRate": 1, + "invoice": "pending", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/22000000-0000-0000-0000-000000000000", + "marketPrice": { + "currency": "USD", + "value": 20 + }, + "partNumber": "0002", + "pricingCurrency": "USD", + "productDescription": "Standard Support", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "quantity": 1, + "servicePeriodStartDate": "2023-05-01T00:00:00Z", + "servicePeriodEndDate": "2023-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45 + }, + "tax": { + "currency": "USD", + "value": 5 + }, + "transactionAmount": { + "currency": "USD", + "value": 50 + }, + "transactionType": "Cancel", + "units": 1.25, + "unitOfMeasure": "1 Minute", + "unitType": "1 Runtime Minute" + }, + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions" + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersCancel.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersCancel.json new file mode 100644 index 000000000000..a78c7887a783 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersCancel.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "transferName": "aabb123" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "Pending", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "canceledBy": "user@contoso.com" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersGet.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersGet.json new file mode 100644 index 000000000000..20cccff9e83f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "transferName": "aabb123" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "productName": "Azure subscription 1", + "skuDescription": "MS-AZR-0017G", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "productName": "Reservation name", + "skuDescription": "Standard_D2s_v3;VirtualMachines;P1Y", + "transferStatus": "InProgress" + } + ] + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersInitiate.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersInitiate.json new file mode 100644 index 000000000000..1930692f02f3 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersInitiate.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy", + "transferName": "aabb123", + "parameters": { + "properties": { + "recipientEmailId": "user@contoso.com" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "Pending", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com" + } + } + }, + "201": { + "body": { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "Pending", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com" + } + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersList.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersList.json new file mode 100644 index 000000000000..e51e11fb24bf --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/examples/transfersList.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-04-01", + "billingAccountName": "10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31", + "billingProfileName": "xxxx-xxxx-xxx-xxx", + "invoiceSectionName": "yyyy-yyyy-yyy-yyy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/10000000-0000-0000-0000-000000000000:00000000-0000-0000-0000-000000000000_2019-05-31/billingProfiles/xxxx-xxxx-xxx-xxx/invoiceSections/yyyy-yyyy-yyy-yyy/transfers/aabb123", + "name": "aabb123", + "type": "Microsoft.Billing/transfers", + "properties": { + "expirationTime": "2018-11-05T17:32:28Z", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "xyz@contoso.com", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "productName": "Azure subscription 1", + "skuDescription": "MS-AZR-0017G", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "productName": "Reservation name", + "skuDescription": "Standard_D2s_v3;VirtualMachines;P1Y", + "transferStatus": "InProgress" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/invoice.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/invoice.json new file mode 100644 index 000000000000..7113849e475e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/invoice.json @@ -0,0 +1,1364 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoices": { + "get": { + "tags": [ + "Invoice" + ], + "description": "Lists the invoices for a billing profile for a given start date and end date. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "in": "query", + "name": "periodStartDate", + "description": "The start date of the billing period for which the invoice is generated. The date is in MM-DD-YYYY format.", + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "periodEndDate", + "description": "The end date of the billing period for which the invoice is generated. The date is in MM-DD-YYYY format.", + "type": "string", + "format": "date" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of invoices.", + "schema": { + "$ref": "#/definitions/InvoiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoicesListByBillingProfile": { + "$ref": "./examples/invoicesListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/downloadDocuments": { + "post": { + "tags": [ + "Invoice" + ], + "description": "Gets a URL to download multiple invoice documents (invoice pdf, tax receipts, credit notes) as a zip file. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_DownloadDocumentsByBillingAccount", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A list of download details for individual documents.", + "required": true, + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/DocumentDownloadRequest" + }, + "x-ms-identifiers": [] + } + } + ], + "responses": { + "200": { + "description": "A secure URL that can be used to download a an entity until the URL expires.", + "schema": { + "$ref": "#/definitions/DocumentDownloadResult" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "InvoicesDownloadDocumentsByBillingAccount": { + "$ref": "./examples/invoicesDownloadDocumentsByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/amend": { + "post": { + "tags": [ + "Invoice" + ], + "description": "Regenerate an invoice by billing account name and invoice name. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_Amend", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "InvoicesAmend": { + "$ref": "./examples/invoicesAmend.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/download": { + "post": { + "tags": [ + "Invoice" + ], + "description": "Gets a URL to download an invoice document. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement or Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_DownloadByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "in": "query", + "name": "documentName", + "description": "The ID that uniquely identifies an invoice document. This ID may be an identifier for an invoice PDF, a credit note, or a tax receipt.", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secure URL that can be used to download a an entity until the URL expires.", + "schema": { + "$ref": "#/definitions/DocumentDownloadResult" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "InvoicesDownloadByBillingAccount": { + "$ref": "./examples/invoicesDownloadByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/downloadSummary": { + "post": { + "tags": [ + "Invoice" + ], + "description": "Gets a URL to download the summary document for an invoice. The operation is supported for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_DownloadSummaryByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secure URL that can be used to download a an entity until the URL expires.", + "schema": { + "$ref": "#/definitions/DocumentDownloadResult" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "InvoicesDownloadSummaryByBillingAccount": { + "$ref": "./examples/invoicesDownloadSummaryByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}": { + "get": { + "tags": [ + "Invoice" + ], + "description": "Gets an invoice by billing account name and ID. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_GetByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of invoices.", + "schema": { + "$ref": "#/definitions/Invoice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoicesGetByBillingAccount": { + "$ref": "./examples/invoicesGetByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices": { + "get": { + "tags": [ + "Invoice" + ], + "description": "Lists the invoices for a billing account for a given start date and end date. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement, Microsoft Customer Agreement, or Microsoft Online Services Program.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "in": "query", + "name": "periodStartDate", + "description": "The start date of the billing period for which the invoice is generated. The date is in MM-DD-YYYY format.", + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "periodEndDate", + "description": "The end date of the billing period for which the invoice is generated. The date is in MM-DD-YYYY format.", + "type": "string", + "format": "date" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of invoices.", + "schema": { + "$ref": "#/definitions/InvoiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoicesListByBillingAccount": { + "$ref": "./examples/invoicesListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/downloadDocuments": { + "post": { + "tags": [ + "Invoice" + ], + "description": "Gets a URL to download multiple invoice documents (invoice pdf, tax receipts, credit notes) as a zip file.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_DownloadDocumentsByBillingSubscription", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/subscriptionId" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A list of download details for individual documents.", + "required": true, + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/DocumentDownloadRequest" + }, + "x-ms-identifiers": [] + } + } + ], + "responses": { + "200": { + "description": "A secure URL that can be used to download a an entity until the URL expires.", + "schema": { + "$ref": "#/definitions/DocumentDownloadResult" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "InvoicesDownloadDocumentsByBillingSubscription": { + "$ref": "./examples/invoicesDownloadDocumentsByBillingSubscription.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices/{invoiceName}/download": { + "post": { + "tags": [ + "Invoice" + ], + "description": "Gets a URL to download an invoice by billing subscription.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_DownloadByBillingSubscription", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/subscriptionId" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "in": "query", + "name": "documentName", + "description": "The ID that uniquely identifies an invoice document. This ID may be an identifier for an invoice PDF, a credit note, or a tax receipt.", + "type": "string" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secure URL that can be used to download a an entity until the URL expires.", + "schema": { + "$ref": "#/definitions/DocumentDownloadResult" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "InvoicesDownloadByBillingSubscription": { + "$ref": "./examples/invoicesDownloadByBillingSubscription.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices/{invoiceName}": { + "get": { + "tags": [ + "Invoice" + ], + "description": "Gets an invoice by subscription ID and invoice ID.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_GetByBillingSubscription", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/subscriptionId" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "An invoice.", + "schema": { + "$ref": "#/definitions/Invoice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoicesGetByBillingSubscription": { + "$ref": "./examples/invoicesGetByBillingSubscription.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices": { + "get": { + "tags": [ + "Invoice" + ], + "description": "Lists the invoices for a subscription.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_ListByBillingSubscription", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/subscriptionId" + }, + { + "in": "query", + "name": "periodStartDate", + "description": "The start date of the billing period for which the invoice is generated. The date is in MM-DD-YYYY format.", + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "periodEndDate", + "description": "The end date of the billing period for which the invoice is generated. The date is in MM-DD-YYYY format.", + "type": "string", + "format": "date" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of invoices.", + "schema": { + "$ref": "#/definitions/InvoiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoicesListByBillingSubscription": { + "$ref": "./examples/invoicesListByBillingSubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/default/invoices/{invoiceName}": { + "get": { + "tags": [ + "Invoice" + ], + "description": "Gets an invoice by ID. The operation is supported for all billing account types.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Invoices_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "An invoice.", + "schema": { + "$ref": "#/definitions/Invoice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoicesGet": { + "$ref": "./examples/invoicesGet.json" + } + } + } + } + }, + "definitions": { + "DocumentDownloadRequest": { + "description": "A list of download details for individual documents.", + "type": "object", + "properties": { + "documentName": { + "description": "The ID that uniquely identifies an invoice document. This ID may be an identifier for an invoice PDF, a credit note, or a tax receipt. If omitted, the most recent invoice PDF for the invoice will be returned.", + "type": "string" + }, + "invoiceName": { + "description": "The ID that uniquely identifies an invoice.", + "type": "string" + } + } + }, + "DocumentDownloadResult": { + "description": "A secure URL that can be used to download a an entity until the URL expires.", + "type": "object", + "properties": { + "expiryTime": { + "description": "The time in UTC when the download URL will expire.", + "type": "string", + "readOnly": true + }, + "url": { + "description": "The URL to the PDF or .zip file.", + "type": "string", + "readOnly": true + } + } + }, + "FailedPayment": { + "description": "A failed payment.", + "type": "object", + "properties": { + "date": { + "format": "date-time", + "description": "The date when the payment was attempted.", + "type": "string", + "readOnly": true + }, + "failedPaymentReason": { + "description": "The reason that the payment failed.", + "enum": [ + "Other", + "BankDeclined", + "CardExpired", + "IncorrectCardDetails" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "FailedPaymentReason", + "modelAsString": true + } + } + } + }, + "Invoice": { + "description": "An invoice.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/InvoiceProperties" + } + }, + "x-ms-azure-resource": true + }, + "InvoiceDocument": { + "description": "The properties of a document.", + "type": "object", + "properties": { + "documentNumbers": { + "description": "The document numbers for the invoice document.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "externalUrl": { + "description": "The URL to download the invoice document if the source is external to Microsoft.Billing.", + "type": "string", + "readOnly": true + }, + "kind": { + "description": "The type of the document.", + "enum": [ + "Other", + "Invoice", + "VoidNote", + "TaxReceipt", + "CreditNote", + "Summary", + "Transactions" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InvoiceDocumentType", + "modelAsString": true + } + }, + "name": { + "description": "The ID that uniquely identifies an invoice document. This ID may be an identifier for an invoice PDF, a credit note, or a tax receipt.", + "type": "string", + "readOnly": true + }, + "url": { + "description": "The URL to download the invoice document if the source is internal to Microsoft.Billing.", + "type": "string", + "readOnly": true + }, + "source": { + "description": "The source of the document. ENF for Brazil and DRS for rest of the world.", + "enum": [ + "Other", + "DRS", + "ENF" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DocumentSource", + "modelAsString": true + } + } + } + }, + "InvoiceListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Invoice" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "InvoiceProperties": { + "description": "An invoice.", + "type": "object", + "properties": { + "amountDue": { + "description": "The amount due as of now.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "azurePrepaymentApplied": { + "description": "The amount of Azure prepayment applied to the charges. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "billedAmount": { + "description": "The total charges for the invoice billing period.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "billedDocumentId": { + "description": "The Id of the active invoice which is originally billed after this invoice was voided. This field is applicable to the void invoices only.", + "type": "string", + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile for which the invoice is generated.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "The ID of the billing profile for which the invoice is generated.", + "type": "string", + "readOnly": true + }, + "creditAmount": { + "description": "The total refund for returns and cancellations during the invoice billing period. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "creditForDocumentId": { + "description": "The Id of the invoice which got voided and this credit note was issued as a result. This field is applicable to the credit notes only.", + "type": "string", + "readOnly": true + }, + "documents": { + "description": "List of documents available to download and view such as invoice, credit note, or tax receipt.", + "type": "array", + "items": { + "$ref": "#/definitions/InvoiceDocument" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "documentType": { + "description": "The type of the document.", + "enum": [ + "Other", + "Invoice", + "VoidNote", + "TaxReceipt", + "CreditNote", + "Summary", + "Transactions" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InvoiceDocumentType", + "modelAsString": true + } + }, + "dueDate": { + "format": "date-time", + "description": "The due date for the invoice.", + "type": "string", + "readOnly": true + }, + "failedPayments": { + "description": "List of failed payments.", + "type": "array", + "items": { + "$ref": "#/definitions/FailedPayment" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "freeAzureCreditApplied": { + "description": "The amount of free Azure credits applied to the charges. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "invoiceDate": { + "format": "date-time", + "description": "The date when the invoice was generated.", + "type": "string", + "readOnly": true + }, + "invoicePeriodEndDate": { + "format": "date-time", + "description": "The end date of the billing period for which the invoice is generated. The date is in MM-DD-YYYY format.", + "type": "string", + "readOnly": true + }, + "invoicePeriodStartDate": { + "format": "date-time", + "description": "The start date of the billing period for which the invoice is generated. The date is in MM-DD-YYYY format.", + "type": "string", + "readOnly": true + }, + "invoiceType": { + "description": "Invoice type.", + "enum": [ + "Other", + "AzureServices", + "AzureMarketplace", + "AzureSupport" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InvoiceType", + "modelAsString": true + } + }, + "isMonthlyInvoice": { + "description": "Specifies if the invoice is generated as part of monthly invoicing cycle or not. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "type": "boolean", + "readOnly": true + }, + "payments": { + "description": "List of payments.", + "type": "array", + "items": { + "$ref": "#/definitions/Payment" + }, + "readOnly": true, + "x-ms-identifiers": [] + }, + "purchaseOrderNumber": { + "description": "An optional purchase order number for the invoice.", + "type": "string", + "readOnly": true + }, + "rebillDetails": { + "description": "Rebill details for an invoice.", + "allOf": [ + { + "$ref": "#/definitions/RebillDetails" + } + ] + }, + "status": { + "description": "The current status of the invoice.", + "enum": [ + "Other", + "Due", + "OverDue", + "Paid", + "Void", + "Locked" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "InvoiceStatus", + "modelAsString": true + } + }, + "subscriptionDisplayName": { + "description": "The name of the billing subscription for which the invoice is generated.", + "type": "string", + "readOnly": true + }, + "subscriptionId": { + "description": "The ID of the subscription for which the invoice is generated.", + "type": "string", + "readOnly": true + }, + "specialTaxationType": { + "description": "Identifies the type of tax calculation used for the invoice. The field is applicable only to invoices with special tax calculation logic.", + "enum": [ + "SubtotalLevel", + "InvoiceLevel" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SpecialTaxationType", + "modelAsString": true + } + }, + "subTotal": { + "description": "The pre-tax amount due. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "taxAmount": { + "description": "The amount of tax charged for the billing period. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "totalAmount": { + "description": "The amount due when the invoice was generated. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "refundDetails": { + "description": "The details of a refund request.", + "allOf": [ + { + "$ref": "#/definitions/RefundDetailsSummary" + } + ] + } + } + }, + "Payment": { + "description": "An invoice payment.", + "type": "object", + "properties": { + "amount": { + "description": "The paid amount.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "date": { + "format": "date-time", + "description": "The date when the payment was made.", + "type": "string", + "readOnly": true + }, + "paymentMethodId": { + "description": "The ID that uniquely identifies the payment method used for the invoice.", + "type": "string", + "readOnly": true + }, + "paymentMethodFamily": { + "description": "The family of payment method.", + "enum": [ + "Other", + "None", + "CreditCard", + "Credits", + "CheckWire", + "EWallet", + "TaskOrder", + "DirectDebit" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PaymentMethodFamily", + "modelAsString": true + } + }, + "paymentMethodType": { + "description": "The type of payment method.", + "type": "string", + "readOnly": true + }, + "paymentType": { + "description": "The type of payment.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + }, + "RebillDetails": { + "description": "The rebill details of an invoice.", + "type": "object", + "properties": { + "invoiceDocumentId": { + "description": "The ID of invoice.", + "type": "string", + "readOnly": true + }, + "creditNoteDocumentId": { + "description": "The ID of credit note.", + "type": "string", + "readOnly": true + }, + "rebillDetails": { + "$ref": "#/definitions/RebillDetails" + } + }, + "readOnly": true + }, + "RefundDetailsSummary": { + "description": "The details of refund request.", + "type": "object", + "properties": { + "requestedOn": { + "format": "date-time", + "description": "Date when the refund was requested.", + "type": "string", + "readOnly": true + }, + "approvedOn": { + "format": "date-time", + "description": "Date when the refund was approved.", + "type": "string", + "readOnly": true + }, + "completedOn": { + "format": "date-time", + "description": "Date when the refund was completed.", + "type": "string", + "readOnly": true + }, + "amountRequested": { + "description": "The amount of refund requested.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "amountRefunded": { + "description": "The amount refunded.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "rebillInvoiceId": { + "description": "The invoice ID of the rebill invoice for a refund.", + "type": "string", + "readOnly": true + }, + "transactionCount": { + "format": "int32", + "description": "The number of transactions refunded.", + "type": "integer", + "readOnly": true + }, + "refundStatus": { + "description": "The status of refund request.", + "enum": [ + "Other", + "Pending", + "Approved", + "Declined", + "Cancelled", + "Completed", + "Expired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RefundStatus", + "modelAsString": true + } + }, + "refundOperationId": { + "description": "The ID of refund operation.", + "type": "string", + "readOnly": true + }, + "refundReason": { + "description": "The reason for refund.", + "enum": [ + "Other", + "AccidentalConversion", + "UnclearPricing", + "AccidentalPurchase", + "ForgotToCancel", + "UnclearDocumentation" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RefundReasonCode", + "modelAsString": true + } + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/invoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/invoiceSection.json new file mode 100644 index 000000000000..1703e936461c --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/invoiceSection.json @@ -0,0 +1,523 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/validateDeleteEligibility": { + "post": { + "tags": [ + "InvoiceSection" + ], + "description": "Validates if the invoice section can be deleted. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "InvoiceSections_ValidateDeleteEligibility", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Eligibility to delete an invoice section result.", + "schema": { + "$ref": "#/definitions/DeleteInvoiceSectionEligibilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoiceSectionsValidateDeleteEligibilitySuccess": { + "$ref": "./examples/invoiceSectionsValidateDeleteEligibilitySuccess.json" + }, + "InvoiceSectionsValidateDeleteEligibilityFailure": { + "$ref": "./examples/invoiceSectionsValidateDeleteEligibilityFailure.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}": { + "delete": { + "tags": [ + "InvoiceSection" + ], + "description": "Deletes an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "InvoiceSections_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "InvoiceSectionsDelete": { + "$ref": "./examples/invoiceSectionsDelete.json" + } + } + }, + "get": { + "tags": [ + "InvoiceSection" + ], + "description": "Gets an invoice section by its ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "InvoiceSections_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "An invoice section.", + "schema": { + "$ref": "#/definitions/InvoiceSection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoiceSectionsGet": { + "$ref": "./examples/invoiceSectionsGet.json" + } + } + }, + "put": { + "tags": [ + "InvoiceSection" + ], + "description": "Creates or updates an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "InvoiceSections_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "An invoice section.", + "required": true, + "schema": { + "$ref": "#/definitions/InvoiceSection" + } + } + ], + "responses": { + "200": { + "description": "An invoice section.", + "schema": { + "$ref": "#/definitions/InvoiceSection" + } + }, + "201": { + "description": "An invoice section.", + "schema": { + "$ref": "#/definitions/InvoiceSection" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "InvoiceSectionsCreateOrUpdate": { + "$ref": "./examples/invoiceSectionsCreateOrUpdate.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections": { + "get": { + "tags": [ + "InvoiceSection" + ], + "description": "Lists the invoice sections that a user has access to. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "InvoiceSections_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "in": "query", + "name": "includeDeleted", + "description": "Can be used to get deleted invoice sections.", + "type": "boolean", + "default": false + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "A list of invoice sections.", + "schema": { + "$ref": "#/definitions/InvoiceSectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "InvoiceSectionsListByBillingProfile": { + "$ref": "./examples/invoiceSectionsListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DeleteInvoiceSectionEligibilityDetail": { + "description": "The details of delete invoice section eligibility result.", + "type": "object", + "properties": { + "code": { + "description": "Code for the delete invoice section validation.", + "enum": [ + "Other", + "LastInvoiceSection", + "ActiveAzurePlans", + "ReservedInstances", + "ActiveBillingSubscriptions" + ], + "type": "string", + "x-ms-enum": { + "name": "DeleteInvoiceSectionEligibilityCode", + "modelAsString": true + } + }, + "message": { + "description": "Validation message.", + "type": "string" + } + } + }, + "DeleteInvoiceSectionEligibilityResult": { + "description": "Eligibility to delete an invoice section result.", + "type": "object", + "properties": { + "eligibilityStatus": { + "description": "Status describing if invoice section is eligible to be deleted.", + "enum": [ + "Allowed", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "DeleteInvoiceSectionEligibilityStatus", + "modelAsString": true + } + }, + "eligibilityDetails": { + "description": "A list of delete invoice section eligibility result details.", + "type": "array", + "items": { + "$ref": "#/definitions/DeleteInvoiceSectionEligibilityDetail" + }, + "x-ms-identifiers": [] + } + } + }, + "InvoiceSection": { + "description": "An invoice section.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/InvoiceSectionProperties" + } + }, + "x-ms-azure-resource": true + }, + "InvoiceSectionListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/InvoiceSection" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "InvoiceSectionProperties": { + "description": "An invoice section.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "displayName": { + "description": "The name of the invoice section.", + "type": "string" + }, + "state": { + "description": "Identifies the status of an invoice section.", + "enum": [ + "Other", + "Active", + "Deleted", + "Disabled", + "UnderReview", + "Warned", + "Restricted" + ], + "type": "string", + "x-ms-enum": { + "name": "InvoiceSectionState", + "modelAsString": true + } + }, + "reasonCode": { + "description": "Reason for the specified invoice section status.", + "enum": [ + "Other", + "PastDue", + "UnusualActivity", + "SpendingLimitReached", + "SpendingLimitExpired" + ], + "type": "string", + "x-ms-enum": { + "name": "InvoiceSectionStateReasonCode", + "modelAsString": true + } + }, + "systemId": { + "description": "The system generated unique identifier for an invoice section.", + "type": "string", + "readOnly": true + }, + "targetCloud": { + "description": "Identifies the cloud environments that are associated with an invoice section. This is a system managed optional field and gets updated as the invoice section gets associated with accounts in various clouds.", + "enum": [ + "Other", + "Internal", + "USGov", + "USNat", + "USSec" + ], + "type": "string", + "x-ms-enum": { + "name": "TargetCloud", + "modelAsString": true + } + }, + "tags": { + "description": "Dictionary of metadata associated with the resource. Maximum key/value length supported of 256 characters. Keys/value should not empty value nor null. Keys can not contain < > % & \\ ? /", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/operation.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/operation.json new file mode 100644 index 000000000000..6f876d442faa --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/operation.json @@ -0,0 +1,148 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/operations": { + "get": { + "tags": [ + "ArmOperations" + ], + "description": "List of operations supported by provider.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Operations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/operationsList.json" + } + } + } + } + }, + "definitions": { + "Operation": { + "description": "Details of a REST API operation, returned from the Resource Provider Operations API.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation, as per Resource-Based Access Control (RBAC). Examples: \"Microsoft.Compute/virtualMachines/write\", \"Microsoft.Compute/virtualMachines/capture/action\".", + "type": "string", + "readOnly": true + }, + "isDataAction": { + "description": "Whether the operation applies to data-plane. This is \"true\" for data-plane operations and \"false\" for ARM/control-plane operations.", + "type": "boolean", + "readOnly": true + }, + "display": { + "description": "Localized display information for this particular operation.", + "$ref": "#/definitions/OperationDisplay" + } + } + }, + "OperationDisplay": { + "description": "Localized display information for this particular operation.", + "type": "object", + "properties": { + "description": { + "description": "The short, localized friendly description of the operation; suitable for tool tips and detailed views.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Create or Update Virtual Machine\", \"Restart Virtual Machine\".", + "type": "string", + "readOnly": true + }, + "provider": { + "description": "The localized friendly form of the resource provider name, e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute\".", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The localized friendly name of the resource type related to this operation. E.g. \"Virtual Machines\" or \"Job Schedule Collections\".", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "readOnly": true, + "x-ms-identifiers": [ + "name" + ] + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/payment.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/payment.json new file mode 100644 index 000000000000..731c6b050c8f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/payment.json @@ -0,0 +1,661 @@ +{ + "consumes": [ + "application/json" + ], + "definitions": { + "PaymentMethod": { + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "description": "A payment method.", + "properties": { + "properties": { + "$ref": "#/definitions/PaymentMethodProperties", + "description": "Payment method properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "PaymentMethodLink": { + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "description": "A payment method link.", + "properties": { + "properties": { + "$ref": "#/definitions/PaymentMethodLinkProperties", + "description": "Payment method link properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "PaymentMethodLinkProperties": { + "description": "The properties of a payment method link.", + "properties": { + "accountHolderName": { + "description": "The account holder name for the payment method. This is only supported for payment methods with family CreditCard.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "The display name of the payment method.", + "readOnly": true, + "type": "string" + }, + "expiration": { + "description": "The expiration month and year of the payment method. This is only supported for payment methods with family CreditCard.", + "readOnly": true, + "type": "string" + }, + "family": { + "description": "The family of payment method.", + "enum": [ + "Other", + "None", + "CreditCard", + "Credits", + "CheckWire", + "EWallet", + "TaskOrder", + "DirectDebit" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "paymentMethodFamily" + } + }, + "lastFourDigits": { + "description": "Last four digits of payment method.", + "readOnly": true, + "type": "string" + }, + "logos": { + "description": "The list of logos for the payment method.", + "items": { + "$ref": "#/definitions/PaymentMethodLogo" + }, + "readOnly": true, + "type": "array", + "x-ms-identifiers": [] + }, + "paymentMethod": { + "description": "Projection of a payment method. Will not be returned in this or future versions.", + "$ref": "#/definitions/PaymentMethodProperties" + }, + "paymentMethodId": { + "description": "Id of payment method. Example: /providers/Microsoft.Billing/paymentMethods/ABCDABCDABC0", + "type": "string" + }, + "paymentMethodType": { + "description": "The type of payment method.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Status of the payment method.", + "enum": [ + "active", + "inactive" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "paymentMethodStatus" + } + } + }, + "type": "object" + }, + "PaymentMethodLinksListResult": { + "description": "The list of payment method links.", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "The list of payment method links.", + "items": { + "$ref": "#/definitions/PaymentMethodLink" + }, + "readOnly": true, + "type": "array", + "x-ms-identifiers": [ + "id" + ] + } + }, + "type": "object" + }, + "PaymentMethodLogo": { + "description": "Logo of payment method.", + "properties": { + "mimeType": { + "description": "MIME type of the logo.", + "readOnly": true, + "type": "string" + }, + "url": { + "description": "Public URL of image of the logo.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "PaymentMethodProperties": { + "description": "The properties of a payment method.", + "properties": { + "id": { + "description": "Id of payment method.", + "type": "string", + "readOnly": true + }, + "accountHolderName": { + "description": "The account holder name for the payment method. This is only supported for payment methods with family CreditCard.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "The display name of the payment method.", + "readOnly": true, + "type": "string" + }, + "expiration": { + "description": "The expiration month and year of the payment method. This is only supported for payment methods with family CreditCard.", + "readOnly": true, + "type": "string" + }, + "family": { + "description": "The family of payment method.", + "enum": [ + "Other", + "None", + "CreditCard", + "Credits", + "CheckWire", + "EWallet", + "TaskOrder", + "DirectDebit" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "paymentMethodFamily" + } + }, + "lastFourDigits": { + "description": "Last four digits of payment method.", + "readOnly": true, + "type": "string" + }, + "logos": { + "description": "The list of logos for the payment method.", + "items": { + "$ref": "#/definitions/PaymentMethodLogo" + }, + "type": "array", + "x-ms-identifiers": [] + }, + "paymentMethodType": { + "description": "The type of payment method.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Status of the payment method.", + "enum": [ + "active", + "inactive" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "paymentMethodStatus" + } + }, + "type": { + "description": "The type of payment method.", + "type": "string", + "readOnly": true + } + }, + "type": "object" + }, + "PaymentMethodsListResult": { + "description": "The list of payment methods.", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "The list of payment methods.", + "items": { + "$ref": "#/definitions/PaymentMethod" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object", + "x-ms-identifiers": [ + "id" + ] + } + }, + "host": "management.azure.com", + "info": { + "description": "The billing client allows you to view and manage your billing details programmatically.", + "title": "BillingManagementClient", + "version": "2024-04-01" + }, + "parameters": { + "billingAccountNameParameter": { + "name": "billingAccountName", + "in": "path", + "description": "The ID that uniquely identifies a billing account.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingProfileNameParameter": { + "name": "billingProfileName", + "in": "path", + "description": "The ID that uniquely identifies a billing profile.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "paymentMethodNameParameter": { + "description": "The ID that uniquely identifies a payment method.", + "in": "path", + "name": "paymentMethodName", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/paymentMethodLinks": { + "get": { + "description": "Lists payment methods attached to a billing profile. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "PaymentMethods_ListByBillingProfile", + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PaymentMethodLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "tags": [ + "PaymentMethods" + ], + "x-ms-examples": { + "PaymentMethodsListByBillingProfile": { + "$ref": "./examples/paymentMethodsListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/paymentMethodLinks/{paymentMethodName}": { + "get": { + "description": "Gets a payment method linked with a billing profile. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "PaymentMethods_GetByBillingProfile", + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "$ref": "#/parameters/paymentMethodNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PaymentMethodLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "tags": [ + "PaymentMethods" + ], + "x-ms-examples": { + "PaymentMethodsGetByBillingProfile": { + "$ref": "./examples/paymentMethodsGetByBillingProfile.json" + } + } + }, + "delete": { + "tags": [ + "PaymentMethods" + ], + "operationId": "PaymentMethods_DeleteAtBillingProfile", + "x-ms-long-running-operation": true, + "description": "Deletes a payment method link and removes the payment method from a billing profile. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "x-ms-examples": { + "PaymentMethodAtBillingProfileDelete": { + "$ref": "./examples/paymentMethodsDeleteAtBillingProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "$ref": "#/parameters/paymentMethodNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "204": { + "description": "The resource was not found." + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "description": "Location URI to poll for result", + "type": "string" + }, + "Retry-After": { + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/paymentMethods": { + "get": { + "description": "Lists the payment methods available for a billing account. Along with the payment methods owned by the caller, these payment methods can be attached to a billing profile to make payments. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "PaymentMethods_ListByBillingAccount", + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PaymentMethodsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "tags": [ + "PaymentMethods" + ], + "x-ms-examples": { + "PaymentMethodsListByBillingAccount": { + "$ref": "./examples/paymentMethodsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/paymentMethods/{paymentMethodName}": { + "get": { + "description": "Gets a payment method available for a billing account. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "PaymentMethods_GetByBillingAccount", + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/paymentMethodNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PaymentMethod" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "tags": [ + "PaymentMethods" + ], + "x-ms-examples": { + "PaymentMethodGetAtBillingProfile": { + "$ref": "./examples/paymentMethodsGetByBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/paymentMethods": { + "get": { + "description": "Lists the payment methods owned by the caller.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "PaymentMethods_ListByUser", + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PaymentMethodsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "tags": [ + "PaymentMethods" + ], + "x-ms-examples": { + "ListPaymentMethodOwnedByUser": { + "$ref": "./examples/paymentMethodsListByUser.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/paymentMethods/{paymentMethodName}": { + "delete": { + "description": "Deletes a payment method owned by the caller.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "PaymentMethods_DeleteByUser", + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/paymentMethodNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "tags": [ + "PaymentMethods" + ], + "x-ms-examples": { + "DeletePaymentMethodOwnedByUser": { + "$ref": "./examples/paymentMethodsDeleteByUser.json" + } + } + }, + "get": { + "description": "Gets a payment method owned by the caller.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "PaymentMethods_GetByUser", + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/paymentMethodNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PaymentMethod" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "tags": [ + "PaymentMethods" + ], + "x-ms-examples": { + "GetPaymentMethodOwnedByUser": { + "$ref": "./examples/paymentMethodsGetByUser.json" + } + } + } + } + }, + "produces": [ + "application/json" + ], + "schemes": [ + "https" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "swagger": "2.0" +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/policy.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/policy.json new file mode 100644 index 000000000000..6bf1e9920486 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/policy.json @@ -0,0 +1,977 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/policies/{policyName}": { + "get": { + "tags": [ + "Policy" + ], + "description": "Lists the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_GetByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "in": "path", + "name": "policyName", + "description": "Service-defined resource names such as 'default' which are reserved resource names.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z\\d-_]{1,128}$", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ServiceDefinedResourceName", + "modelAsString": true + } + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A policy at customer scope.", + "schema": { + "$ref": "#/definitions/CustomerPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PoliciesGetByCustomer": { + "$ref": "./examples/policiesGetByCustomer.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/policies/default": { + "put": { + "tags": [ + "Policy" + ], + "description": "Updates the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_CreateOrUpdateByCustomer", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A policy at customer scope.", + "required": true, + "schema": { + "$ref": "#/definitions/CustomerPolicy" + } + } + ], + "responses": { + "200": { + "description": "A policy at customer scope.", + "schema": { + "$ref": "#/definitions/CustomerPolicy" + } + }, + "201": { + "description": "A policy at customer scope.", + "schema": { + "$ref": "#/definitions/CustomerPolicy" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PoliciesPutByCustomer": { + "$ref": "./examples/policiesPutByCustomer.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/policies/default": { + "get": { + "tags": [ + "Policy" + ], + "description": "Lists the policies for a billing profile. This operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_GetByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A policy at billing profile scope.", + "schema": { + "$ref": "#/definitions/BillingProfilePolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PoliciesGetByBillingProfile": { + "$ref": "./examples/policiesGetByBillingProfile.json" + } + } + }, + "put": { + "tags": [ + "Policy" + ], + "description": "Updates the policies for a billing profile. This operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_CreateOrUpdateByBillingProfile", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A policy at billing profile scope.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingProfilePolicy" + } + } + ], + "responses": { + "200": { + "description": "A policy at billing profile scope.", + "schema": { + "$ref": "#/definitions/BillingProfilePolicy" + } + }, + "201": { + "description": "A policy at billing profile scope.", + "schema": { + "$ref": "#/definitions/BillingProfilePolicy" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PoliciesPutByBillingProfile": { + "$ref": "./examples/policiesPutByBillingProfile.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/policies/default": { + "get": { + "tags": [ + "Policy" + ], + "description": "Lists the policies for a customer at billing account scope. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_GetByCustomerAtBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A policy at customer scope.", + "schema": { + "$ref": "#/definitions/CustomerPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PoliciesGetByCustomerAtBillingAccount": { + "$ref": "./examples/policiesGetByCustomerAtBillingAccount.json" + } + } + }, + "put": { + "tags": [ + "Policy" + ], + "description": "Updates the policies for a customer at billing account scope. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_CreateOrUpdateByCustomerAtBillingAccount", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A policy at customer scope.", + "required": true, + "schema": { + "$ref": "#/definitions/CustomerPolicy" + } + } + ], + "responses": { + "200": { + "description": "A policy at customer scope.", + "schema": { + "$ref": "#/definitions/CustomerPolicy" + } + }, + "201": { + "description": "A policy at customer scope.", + "schema": { + "$ref": "#/definitions/CustomerPolicy" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PoliciesPutByCustomerAtBillingAccount": { + "$ref": "./examples/policiesPutByCustomerAtBillingAccount.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/policies/default": { + "get": { + "tags": [ + "Policy" + ], + "description": "Get the policies for a billing account of Enterprise Agreement type.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_GetByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A policy at billing account scope.", + "schema": { + "$ref": "#/definitions/BillingAccountPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PoliciesGetByBillingAccount": { + "$ref": "./examples/policiesGetByBillingAccount.json" + } + } + }, + "put": { + "tags": [ + "Policy" + ], + "description": "Update the policies for a billing account of Enterprise Agreement type.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_CreateOrUpdateByBillingAccount", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A policy at billing account scope.", + "required": true, + "schema": { + "$ref": "#/definitions/BillingAccountPolicy" + } + } + ], + "responses": { + "200": { + "description": "A policy at billing account scope.", + "schema": { + "$ref": "#/definitions/BillingAccountPolicy" + } + }, + "201": { + "description": "A policy at billing account scope.", + "schema": { + "$ref": "#/definitions/BillingAccountPolicy" + }, + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PoliciesPutByBillingAccount": { + "$ref": "./examples/policiesPutByBillingAccount.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/policies/default": { + "get": { + "tags": [ + "Policy" + ], + "description": "Lists the policies that are managed by the Billing Admin for the defined subscriptions. This is supported for Microsoft Online Services Program, Microsoft Customer Agreement and Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Policies_GetBySubscription", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/subscriptionId" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A policy at subscription scope.", + "schema": { + "$ref": "#/definitions/SubscriptionPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PoliciesGetBySubscription": { + "$ref": "./examples/policiesGetBySubscription.json" + } + } + } + } + }, + "definitions": { + "BillingAccountPolicy": { + "description": "A policy at billing account scope.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingAccountPolicyProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingAccountPolicyProperties": { + "description": "A policy at billing account scope.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "enterpriseAgreementPolicies": { + "description": "The policies for Enterprise Agreement enrollments.", + "allOf": [ + { + "$ref": "#/definitions/EnterpriseAgreementPolicies" + } + ] + }, + "marketplacePurchases": { + "description": "The policy that controls whether Azure marketplace purchases are allowed.", + "enum": [ + "Other", + "AllAllowed", + "Disabled", + "NotAllowed", + "OnlyFreeAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "MarketplacePurchasesPolicy", + "modelAsString": true + } + }, + "reservationPurchases": { + "description": "The policy that controls whether Azure reservation purchases are allowed.", + "enum": [ + "Other", + "Allowed", + "Disabled", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "ReservationPurchasesPolicy", + "modelAsString": true + } + }, + "savingsPlanPurchases": { + "description": "The policy that controls whether users with Azure savings plan purchase are allowed.", + "enum": [ + "Other", + "Allowed", + "Disabled", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "SavingsPlanPurchasesPolicy", + "modelAsString": true + } + }, + "policies": { + "description": "List of all policies defined at the billing scope.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicySummary" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "BillingProfilePolicy": { + "description": "A policy at billing profile scope.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BillingProfilePolicyProperties" + } + }, + "x-ms-azure-resource": true + }, + "BillingProfilePolicyProperties": { + "description": "A policy at billing profile scope.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "enterpriseAgreementPolicies": { + "description": "The policies for Enterprise Agreement enrollments.", + "allOf": [ + { + "$ref": "#/definitions/EnterpriseAgreementPolicies" + } + ] + }, + "invoiceSectionLabelManagement": { + "description": "The policy that controls invoice section label management at invoice section scope. This is allowed by default.", + "enum": [ + "Other", + "Allowed", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "InvoiceSectionLabelManagementPolicy", + "modelAsString": true + } + }, + "marketplacePurchases": { + "description": "The policy that controls whether Azure marketplace purchases are allowed.", + "enum": [ + "Other", + "AllAllowed", + "Disabled", + "NotAllowed", + "OnlyFreeAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "MarketplacePurchasesPolicy", + "modelAsString": true + } + }, + "reservationPurchases": { + "description": "The policy that controls whether Azure reservation purchases are allowed.", + "enum": [ + "Other", + "Allowed", + "Disabled", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "ReservationPurchasesPolicy", + "modelAsString": true + } + }, + "savingsPlanPurchases": { + "description": "The policy that controls whether users with Azure savings plan purchase are allowed.", + "enum": [ + "Other", + "Allowed", + "Disabled", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "SavingsPlanPurchasesPolicy", + "modelAsString": true + } + }, + "viewCharges": { + "description": "The policy that controls whether the users in customer's organization can view charges at pay-as-you-go prices.", + "enum": [ + "Other", + "Allowed", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "ViewChargesPolicy", + "modelAsString": true + } + }, + "policies": { + "description": "List of all policies defined at the billing scope.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicySummary" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "CustomerPolicy": { + "description": "A policy at customer scope.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CustomerPolicyProperties" + } + }, + "x-ms-azure-resource": true + }, + "CustomerPolicyProperties": { + "description": "A policy at customer scope.", + "required": [ + "viewCharges" + ], + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "viewCharges": { + "description": "The policy that controls whether the users in customer's organization can view charges at pay-as-you-go prices.", + "enum": [ + "Other", + "Allowed", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "ViewChargesPolicy", + "modelAsString": true + } + }, + "policies": { + "description": "List of all policies defined at the billing scope.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicySummary" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "EnterpriseAgreementPolicies": { + "description": "The policies for Enterprise Agreement enrollments.", + "type": "object", + "properties": { + "authenticationType": { + "description": "The state showing the enrollment auth level.", + "enum": [ + "Other", + "MicrosoftAccountOnly", + "MixedAccount", + "OrganizationalAccountCrossTenant", + "OrganizationalAccountOnly" + ], + "type": "string", + "x-ms-enum": { + "name": "EnrollmentAuthLevelState", + "modelAsString": true + } + }, + "accountOwnerViewCharges": { + "description": "The policy that controls whether account owner can view charges.", + "enum": [ + "Other", + "Allowed", + "Disabled", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "EnrollmentAccountOwnerViewCharges", + "modelAsString": true + } + }, + "departmentAdminViewCharges": { + "description": "The policy that controls whether department admin can view charges.", + "enum": [ + "Other", + "Allowed", + "Disabled", + "NotAllowed" + ], + "type": "string", + "x-ms-enum": { + "name": "EnrollmentDepartmentAdminViewCharges", + "modelAsString": true + } + } + } + }, + "PolicySummary": { + "description": "The summary of the policy.", + "type": "object", + "properties": { + "name": { + "description": "The name of the policy.", + "type": "string" + }, + "value": { + "description": "The value of the policy.", + "type": "string" + }, + "policyType": { + "description": "The type of the policy.", + "enum": [ + "Other", + "UserControlled", + "SystemControlled" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyType", + "modelAsString": true + } + }, + "scope": { + "description": "The scope at which the policy is defined.", + "type": "string" + } + } + }, + "SubscriptionPolicy": { + "description": "A policy at subscription scope.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SubscriptionPolicyProperties" + } + }, + "x-ms-azure-resource": true + }, + "SubscriptionPolicyProperties": { + "description": "A policy at subscription scope.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the resource during a long-running operation.", + "enum": [ + "Succeeded", + "Canceled", + "Failed", + "New", + "Pending", + "Provisioning" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "policies": { + "description": "List of all policies defined at the billing scope.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicySummary" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/product.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/product.json new file mode 100644 index 000000000000..f7e58250fb7d --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/product.json @@ -0,0 +1,826 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/products": { + "get": { + "tags": [ + "Product" + ], + "description": "Lists the products for an invoice section. These don't include products billed based on usage. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Products_ListByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of products. It contains a list of available product summaries in reverse chronological order by purchase date.", + "schema": { + "$ref": "#/definitions/ProductListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProductsListByInvoiceSection": { + "$ref": "./examples/productsListByInvoiceSection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/products": { + "get": { + "tags": [ + "Product" + ], + "description": "Lists the products for a billing profile. These don't include products billed based on usage. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Products_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of products. It contains a list of available product summaries in reverse chronological order by purchase date.", + "schema": { + "$ref": "#/definitions/ProductListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProductsListByBillingProfile": { + "$ref": "./examples/productsListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/products": { + "get": { + "tags": [ + "Product" + ], + "description": "Lists the products for a customer. These don't include products billed based on usage.The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Products_ListByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of products. It contains a list of available product summaries in reverse chronological order by purchase date.", + "schema": { + "$ref": "#/definitions/ProductListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProductsListByCustomer": { + "$ref": "./examples/productsListByCustomer.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/products/{productName}/move": { + "post": { + "tags": [ + "Product" + ], + "description": "Moves a product's charges to a new invoice section. The new invoice section must belong to the same billing profile as the existing invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Products_Move", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/productName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the product to initiate a transfer.", + "required": true, + "schema": { + "$ref": "#/definitions/MoveProductRequest" + } + } + ], + "responses": { + "200": { + "description": "A product.", + "schema": { + "$ref": "#/definitions/Product" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ProductMove": { + "$ref": "./examples/productMove.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/products/{productName}/validateMoveEligibility": { + "post": { + "tags": [ + "Product" + ], + "description": "Validates if a product's charges can be moved to a new invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Products_ValidateMoveEligibility", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/productName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "The properties of the product to initiate a transfer.", + "required": true, + "schema": { + "$ref": "#/definitions/MoveProductRequest" + } + } + ], + "responses": { + "200": { + "description": "Result of the transfer eligibility validation.", + "schema": { + "$ref": "#/definitions/MoveProductEligibilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProductValidateMoveSuccess": { + "$ref": "./examples/productValidateMoveSuccess.json" + }, + "ProductValidateMoveFailure": { + "$ref": "./examples/productValidateMoveFailure.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/products/{productName}": { + "get": { + "tags": [ + "Product" + ], + "description": "Gets a product by ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Products_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/productName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A product.", + "schema": { + "$ref": "#/definitions/Product" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProductsGet": { + "$ref": "./examples/productsGet.json" + } + } + }, + "patch": { + "tags": [ + "Product" + ], + "description": "Updates the properties of a Product. Currently, auto renew can be updated. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Products_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/productName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "body", + "name": "parameters", + "description": "A product.", + "required": true, + "schema": { + "$ref": "#/definitions/ProductPatch" + } + } + ], + "responses": { + "200": { + "description": "A product.", + "schema": { + "$ref": "#/definitions/Product" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProductsUpdate": { + "$ref": "./examples/productsUpdate.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/products": { + "get": { + "tags": [ + "Product" + ], + "description": "Lists the products for a billing account. These don't include products billed based on usage. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Products_ListByBillingAccount", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of products. It contains a list of available product summaries in reverse chronological order by purchase date.", + "schema": { + "$ref": "#/definitions/ProductListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProductsListByBillingAccount": { + "$ref": "./examples/productsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ExternalReference": { + "description": "An external reference.", + "type": "object", + "properties": { + "id": { + "description": "The ID that uniquely identifies an external reference.", + "type": "string", + "readOnly": true + }, + "url": { + "description": "The URL of the external reference.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + }, + "MoveProductEligibilityResult": { + "description": "Result of the transfer eligibility validation.", + "type": "object", + "properties": { + "isMoveEligible": { + "description": "Specifies whether the subscription is eligible to be transferred.", + "type": "boolean" + }, + "errorDetails": { + "description": "Error details of the transfer eligibility validation.", + "allOf": [ + { + "$ref": "#/definitions/MoveProductErrorDetails" + } + ] + } + } + }, + "MoveProductErrorDetails": { + "description": "Error details of the transfer eligibility validation.", + "type": "object", + "properties": { + "code": { + "description": "Error code for the product transfer validation.", + "enum": [ + "Other", + "BillingAccountInactive", + "DestinationBillingProfileInactive", + "DestinationBillingProfileNotFound", + "DestinationBillingProfilePastDue", + "DestinationInvoiceSectionInactive", + "DestinationInvoiceSectionNotFound", + "InsufficientPermissionOnDestination", + "InsufficientPermissionOnSource", + "InvalidDestination", + "InvalidSource", + "MarketplaceNotEnabledOnDestination", + "ProductInactive", + "ProductNotFound", + "ProductTypeNotSupported", + "SourceBillingProfilePastDue", + "SourceInvoiceSectionInactive" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "MoveValidationErrorCode", + "modelAsString": true + } + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Error details of the transfer eligibility validation.", + "type": "string", + "readOnly": true + } + } + }, + "MoveProductRequest": { + "description": "The properties of the product to initiate a transfer.", + "required": [ + "destinationInvoiceSectionId" + ], + "type": "object", + "properties": { + "destinationInvoiceSectionId": { + "description": "The destination invoice section id.", + "minLength": 1, + "type": "string" + } + } + }, + "Product": { + "description": "A product.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProductProperties" + } + }, + "x-ms-azure-resource": true + }, + "ProductListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Product" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "ProductPatch": { + "description": "A product.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProductProperties" + } + }, + "x-ms-azure-resource": true + }, + "ProductProperties": { + "description": "A product.", + "type": "object", + "properties": { + "autoRenew": { + "description": "Indicates whether auto renewal is turned on or off for a product.", + "enum": [ + "Off", + "On" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoRenew", + "modelAsString": true + } + }, + "availabilityId": { + "description": "The availability of the product.", + "type": "string", + "readOnly": true + }, + "billingFrequency": { + "description": "The frequency at which the product will be billed.", + "type": "string", + "readOnly": true + }, + "billingProfileId": { + "description": "The ID of the billing profile to which the product is billed.", + "type": "string", + "readOnly": true + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile to which the product is billed.", + "type": "string", + "readOnly": true + }, + "customerId": { + "description": "The ID of the customer for whom the product was purchased. The field is applicable only for Microsoft Partner Agreement billing account.", + "type": "string", + "readOnly": true + }, + "customerDisplayName": { + "description": "The name of the customer for whom the product was purchased. The field is applicable only for Microsoft Partner Agreement billing account.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The display name of the product.", + "type": "string", + "readOnly": true + }, + "endDate": { + "description": "The date when the product will be renewed or canceled.", + "type": "string", + "readOnly": true + }, + "invoiceSectionId": { + "description": "The ID of the invoice section to which the product is billed.", + "type": "string", + "readOnly": true + }, + "invoiceSectionDisplayName": { + "description": "The name of the invoice section to which the product is billed.", + "type": "string", + "readOnly": true + }, + "lastCharge": { + "description": "The last month charges.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "lastChargeDate": { + "description": "The date of the last charge.", + "type": "string", + "readOnly": true + }, + "productType": { + "description": "The description of the type of product.", + "type": "string", + "readOnly": true + }, + "productTypeId": { + "description": "The ID of the type of product.", + "type": "string", + "readOnly": true + }, + "skuId": { + "description": "The sku ID of the product.", + "type": "string", + "readOnly": true + }, + "skuDescription": { + "description": "The sku description of the product.", + "type": "string", + "readOnly": true + }, + "purchaseDate": { + "description": "The date when the product was purchased.", + "type": "string", + "readOnly": true + }, + "quantity": { + "format": "int64", + "description": "The quantity purchased for the product.", + "type": "integer", + "readOnly": true + }, + "status": { + "description": "The status of the product.", + "enum": [ + "Other", + "Active", + "Disabled", + "Deleted", + "PastDue", + "Expiring", + "Expired", + "AutoRenew", + "Canceled", + "Suspended" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProductStatus", + "modelAsString": true + } + }, + "tenantId": { + "description": "The id of the tenant in which the product is used.", + "type": "string", + "readOnly": true + }, + "reseller": { + "description": "Reseller for this product. The fields is not available for Microsoft Partner Agreement products.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Reseller" + } + ] + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/reservation.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/reservation.json new file mode 100644 index 000000000000..24ad2e5bae60 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/reservation.json @@ -0,0 +1,1423 @@ +{ + "swagger": "2.0", + "info": { + "description": "Billing client provides access to billing resources for Azure subscriptions.", + "title": "BillingManagementClient", + "version": "2024-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/reservations": { + "get": { + "description": "Lists the reservations in the billing account and the roll up counts of reservations group by provisioning states.", + "operationId": "Reservations_ListByBillingAccount", + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/RefreshSummaryParameter" + }, + { + "$ref": "#/parameters/SelectedStateParameter" + }, + { + "$ref": "#/parameters/TakeParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "tags": [ + "Reservations" + ], + "x-ms-examples": { + "reservationsListByBillingAccount": { + "$ref": "./examples/reservationsListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/reservations": { + "get": { + "tags": [ + "Reservations" + ], + "x-ms-examples": { + "ReservationsListByBillingProfile": { + "$ref": "./examples/reservationsListByBillingProfile.json" + } + }, + "operationId": "Reservations_ListByBillingProfile", + "description": "Lists the reservations for a billing profile and the roll up counts of reservations group by provisioning state.", + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/RefreshSummaryParameter" + }, + { + "$ref": "#/parameters/SelectedStateParameter" + }, + { + "$ref": "#/parameters/TakeParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ReservationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/reservationOrders/{reservationOrderId}/reservations/{reservationId}": { + "get": { + "summary": "Get Reservation details in the billing account.", + "description": "Get specific Reservation details in the billing account.", + "operationId": "Reservations_GetByReservationOrder", + "x-ms-examples": { + "reservationGetByBillingAccount": { + "$ref": "./examples/reservationGetByBillingAccount.json" + }, + "reservationGetByBillingAccountSingleScope": { + "$ref": "./examples/reservationGetByBillingAccountSingleScope.json" + }, + "reservationGetByBillingAccountSingleResourceGroup": { + "$ref": "./examples/reservationGetByBillingAccountSingleResourceGroup.json" + }, + "reservationGetByBillingAccountManagementGroup": { + "$ref": "./examples/reservationGetByBillingAccountManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/ReservationOrderIdParameter" + }, + { + "$ref": "#/parameters/ReservationIdParameter" + }, + { + "$ref": "#/parameters/ExpandParameter" + } + ], + "tags": [ + "Reservation" + ], + "responses": { + "200": { + "description": "Get `Reservation` details.", + "schema": { + "$ref": "#/definitions/Reservation" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "description": "Update reservation by billing account.", + "operationId": "Reservations_UpdateByBillingAccount", + "tags": [ + "Reservation" + ], + "x-ms-examples": { + "ReservationUpdate": { + "$ref": "./examples/reservationUpdateByBillingAccount.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/ReservationOrderIdParameter" + }, + { + "$ref": "#/parameters/ReservationIdParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/PatchParameter" + } + ], + "responses": { + "200": { + "description": "The request is completed.", + "schema": { + "$ref": "#/definitions/Reservation" + } + }, + "202": { + "description": "The request is accepted.", + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "URL for checking the ongoing status of the operation." + }, + "Location": { + "type": "string", + "description": "URL for determining when an operation has completed. Only use this value only when Azure-AsyncOperation isn't returned." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "Clients should wait for the Retry-After interval before polling again" + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/reservationOrders/{reservationOrderId}/reservations": { + "get": { + "summary": "Get Reservations in a given reservation Order in the billing account", + "description": "List Reservations within a single ReservationOrder in the billing account.", + "operationId": "Reservations_ListByReservationOrder", + "x-ms-examples": { + "reservationsGetFromOrderByBillingAccount": { + "$ref": "./examples/reservationsGetFromOrderByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/ReservationOrderIdParameter" + } + ], + "tags": [ + "Reservations" + ], + "responses": { + "200": { + "description": "List `Reservation`s within a single `ReservationOrder`.", + "schema": { + "$ref": "#/definitions/ReservationList" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/reservationOrders/{reservationOrderId}": { + "get": { + "summary": "Get a specific ReservationOrder in the billing account.", + "description": "Get the details of the ReservationOrder in the billing account.", + "operationId": "ReservationOrders_GetByBillingAccount", + "x-ms-examples": { + "reservationOrderGetByBillingAccount": { + "$ref": "./examples/reservationOrderGetByBillingAccount.json" + }, + "reservationOrderGetByBillingAccountWithExpandPlanInformation": { + "$ref": "./examples/reservationOrderGetByBillingAccountWithExpandPlanInformation.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "#/parameters/ReservationOrderIdParameter" + }, + { + "$ref": "#/parameters/ExpandParameter" + } + ], + "tags": [ + "ReservationOrder" + ], + "responses": { + "200": { + "description": "Get the details of the `ReservationOrder`.", + "schema": { + "$ref": "#/definitions/ReservationOrder" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/reservationOrders": { + "get": { + "summary": "Get all `ReservationOrders in the billing account.", + "description": "List all the `ReservationOrders in the billing account.", + "operationId": "ReservationOrders_ListByBillingAccount", + "x-ms-examples": { + "reservationOrderListByBillingAccount": { + "$ref": "./examples/reservationOrdersListByBillingAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + } + ], + "tags": [ + "ReservationOrders" + ], + "responses": { + "200": { + "description": "List of ReservationOrders", + "schema": { + "$ref": "#/definitions/ReservationOrderList" + } + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ReservationOrder": { + "type": "object", + "description": "Details of a reservation order being returned.", + "x-ms-azure-resource": true, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "etag": { + "type": "integer", + "format": "int32" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationOrderProperty", + "description": "The properties associated to this reservation order", + "type": "object" + }, + "tags": { + "description": "Tags for this reservation", + "$ref": "#/definitions/Tags" + } + } + }, + "Reservation": { + "type": "object", + "description": "The definition of the reservation.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "x-ms-azure-resource": true, + "properties": { + "location": { + "description": "The location of the reservation.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "etag": { + "type": "integer", + "format": "int32" + }, + "properties": { + "$ref": "#/definitions/ReservationProperty", + "description": "The properties associated to this reservation", + "type": "object", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Tags for this reservation", + "$ref": "#/definitions/Tags" + }, + "sku": { + "$ref": "#/definitions/ReservationSkuProperty", + "description": "The sku information associated to this reservation", + "type": "object" + } + } + }, + "ReservationAppliedScope": { + "description": "Reservation applied scope", + "readOnly": true, + "type": "string" + }, + "ReservationOrderProperty": { + "type": "object", + "description": "Properties of a reservation order.", + "properties": { + "displayName": { + "type": "string", + "description": "Friendly name for user to easily identified the reservation order." + }, + "enrollmentId": { + "type": "string", + "description": "Enrollment id of the reservation order." + }, + "customerId": { + "type": "string", + "description": "Fully-qualified identifier of the customerId where the benefit is applied. Present only for Enterprise Agreement PartnerLed customers." + }, + "billingProfileId": { + "type": "string", + "description": "Billing profile Id associated to this reservation order." + }, + "billingAccountId": { + "type": "string", + "description": "Billing account Id associated to this reservation order." + }, + "requestDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the DateTime when the reservation order was initially requested for purchase." + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the DateTime when the reservation order was created." + }, + "expiryDate": { + "type": "string", + "format": "date", + "description": "This is the date when the reservation order will expire." + }, + "expiryDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the reservation order will expire." + }, + "benefitStartTime": { + "type": "string", + "format": "date-time", + "description": "This is the DateTime when the reservation benefit started." + }, + "originalQuantity": { + "type": "integer", + "format": "int32", + "description": "Total original quantity of the skus purchased in the reservation order." + }, + "term": { + "description": "The term of the reservation, e.g. P1Y", + "readOnly": true, + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the reservation, e.g. Succeeded", + "readOnly": true, + "type": "string" + }, + "billingPlan": { + "$ref": "#/definitions/ReservationBillingPlan" + }, + "planInformation": { + "$ref": "#/definitions/ReservationOrderBillingPlanInformation" + }, + "reservations": { + "type": "array", + "items": { + "$ref": "#/definitions/Reservation" + } + }, + "reviewDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the Azure Hybrid Benefit needs to be reviewed." + }, + "extendedStatusInfo": { + "$ref": "#/definitions/ReservationExtendedStatusInfo" + }, + "productCode": { + "$ref": "#/definitions/ProductCode" + } + } + }, + "ReservationProperty": { + "type": "object", + "description": "The property of reservation object.", + "properties": { + "reservedResourceType": { + "description": "The reserved source type of the reservation, e.g. virtual machine.", + "readOnly": true, + "type": "string" + }, + "instanceFlexibility": { + "description": "Allows reservation discount to be applied across skus within the same auto fit group. Not all skus support instance size flexibility.", + "$ref": "#/definitions/InstanceFlexibility" + }, + "displayName": { + "description": "The display name of the reservation", + "readOnly": true, + "type": "string" + }, + "appliedScopes": { + "description": "The array of applied scopes of a reservation. Will be null if the reservation is in Shared scope", + "items": { + "$ref": "#/definitions/ReservationAppliedScope" + }, + "type": "array" + }, + "appliedScopeType": { + "description": "The applied scope type of the reservation.", + "readOnly": true, + "type": "string" + }, + "archived": { + "description": "Indicates if the reservation is archived", + "type": "boolean" + }, + "capabilities": { + "description": "Capabilities of the reservation", + "type": "string" + }, + "quantity": { + "description": "The number of the reservation.", + "readOnly": true, + "type": "number" + }, + "provisioningState": { + "description": "The provisioning state of the reservation, e.g. Succeeded", + "readOnly": true, + "type": "string" + }, + "effectiveDateTime": { + "description": "The effective date time of the reservation", + "readOnly": true, + "type": "string", + "format": "date-time" + }, + "benefitStartTime": { + "type": "string", + "format": "date-time", + "description": "This is the DateTime when the reservation benefit started." + }, + "lastUpdatedDateTime": { + "type": "string", + "format": "date-time", + "description": "DateTime of the last time the reservation was updated.", + "readOnly": true + }, + "expiryDate": { + "description": "The expiry date of the reservation", + "readOnly": true, + "type": "string" + }, + "expiryDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the reservation will expire." + }, + "reviewDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the Azure Hybrid Benefit needs to be reviewed." + }, + "skuDescription": { + "description": "The sku description of the reservation", + "readOnly": true, + "type": "string" + }, + "extendedStatusInfo": { + "description": "The message giving detailed information about the status code.", + "$ref": "#/definitions/ReservationExtendedStatusInfo" + }, + "billingPlan": { + "description": "The billing plan options available for this sku.", + "$ref": "#/definitions/ReservationBillingPlan" + }, + "displayProvisioningState": { + "description": "The provisioning state of the reservation for display, e.g. Succeeded", + "readOnly": true, + "type": "string" + }, + "provisioningSubState": { + "description": "The provisioning state of the reservation, e.g. Succeeded", + "readOnly": true, + "type": "string" + }, + "purchaseDate": { + "type": "string", + "format": "date", + "description": "This is the date when the reservation was purchased." + }, + "purchaseDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the reservation was purchased." + }, + "splitProperties": { + "$ref": "#/definitions/ReservationSplitProperties" + }, + "mergeProperties": { + "$ref": "#/definitions/ReservationMergeProperties" + }, + "swapProperties": { + "$ref": "#/definitions/ReservationSwapProperties" + }, + "appliedScopeProperties": { + "$ref": "#/definitions/ReservationAppliedScopeProperties" + }, + "billingScopeId": { + "description": "Subscription that will be charged for purchasing reservation or savings plan", + "readOnly": true, + "type": "string" + }, + "renew": { + "description": "The renew state of the reservation", + "readOnly": true, + "type": "boolean" + }, + "renewSource": { + "description": "The renew source of the reservation", + "readOnly": true, + "type": "string" + }, + "renewDestination": { + "type": "string", + "description": "Reservation Id of the reservation which is purchased because of renew. Format of the resource Id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}." + }, + "renewProperties": { + "$ref": "#/definitions/RenewPropertiesResponse" + }, + "term": { + "description": "The term of the reservation, e.g. P1Y", + "readOnly": true, + "type": "string" + }, + "userFriendlyAppliedScopeType": { + "description": "The applied scope type of the reservation for display, e.g. Shared", + "readOnly": true, + "type": "string" + }, + "userFriendlyRenewState": { + "description": "The renew state of the reservation for display, e.g. On", + "readOnly": true, + "type": "string" + }, + "utilization": { + "readOnly": true, + "type": "object", + "description": "Reservation utilization", + "x-ms-client-flatten": true, + "properties": { + "trend": { + "description": "last 7 day utilization trend for a reservation", + "readOnly": true, + "type": "string" + }, + "aggregates": { + "description": "The array of aggregates of a reservation's utilization", + "type": "array", + "items": { + "$ref": "#/definitions/ReservationUtilizationAggregates" + }, + "x-ms-identifiers": [] + } + } + }, + "productCode": { + "$ref": "#/definitions/ProductCode" + } + } + }, + "ReservationSkuProperty": { + "type": "object", + "description": "The property of reservation sku object.", + "properties": { + "name": { + "description": "The name of the reservation sku.", + "readOnly": true, + "type": "string" + } + } + }, + "ReservationsListResult": { + "type": "object", + "description": "The list of reservations and summary of roll out count of reservations in each state.", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "readOnly": true, + "type": "string" + }, + "summary": { + "$ref": "#/definitions/ReservationSummary", + "description": "The roll out count summary of the reservations", + "type": "object" + }, + "value": { + "description": "The list of reservations.", + "items": { + "$ref": "#/definitions/Reservation" + }, + "readOnly": true, + "type": "array" + } + } + }, + "ReservationOrderList": { + "type": "object", + "description": "List of ReservationOrders", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ReservationOrder" + } + }, + "nextLink": { + "type": "string", + "description": "Url to get the next page of reservationOrders." + } + } + }, + "ReservationList": { + "type": "object", + "description": "List of `Reservations", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Reservation" + } + }, + "nextLink": { + "type": "string", + "description": "Url to get the next page of reservations." + } + } + }, + "ReservationSummary": { + "description": "The roll up count summary of reservations in each state", + "properties": { + "cancelledCount": { + "description": "The number of reservation in Cancelled state", + "readOnly": true, + "type": "number" + }, + "expiredCount": { + "description": "The number of reservation in Expired state", + "readOnly": true, + "type": "number" + }, + "expiringCount": { + "description": "The number of reservation in Expiring state", + "readOnly": true, + "type": "number" + }, + "failedCount": { + "description": "The number of reservation in Failed state", + "readOnly": true, + "type": "number" + }, + "pendingCount": { + "description": "The number of reservation in Pending state", + "readOnly": true, + "type": "number" + }, + "succeededCount": { + "description": "The number of reservation in Succeeded state", + "readOnly": true, + "type": "number" + }, + "noBenefitCount": { + "description": "The number of reservation in 'No Benefit' state", + "readOnly": true, + "type": "number" + }, + "warningCount": { + "description": "The number of reservation in Warning state", + "readOnly": true, + "type": "number" + }, + "processingCount": { + "description": "The number of reservation in Processing state", + "readOnly": true, + "type": "number" + } + }, + "type": "object" + }, + "ReservationUtilizationAggregates": { + "description": "The aggregate values of reservation utilization", + "properties": { + "grain": { + "description": "The grain of the aggregate", + "readOnly": true, + "type": "number" + }, + "grainUnit": { + "description": "The grain unit of the aggregate", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "The aggregate value", + "readOnly": true, + "type": "number" + }, + "valueUnit": { + "description": "The aggregate value unit", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RenewPropertiesResponse": { + "type": "object", + "description": "The renew properties for a reservation.", + "properties": { + "purchaseProperties": { + "$ref": "#/definitions/ReservationPurchaseRequest" + }, + "pricingCurrencyTotal": { + "$ref": "#/definitions/Price", + "description": "Amount that Microsoft uses for record. Used during refund for calculating refund limit. Tax is not included. This is locked price 30 days before expiry." + }, + "billingCurrencyTotal": { + "$ref": "#/definitions/Price", + "description": "Currency and amount that customer will be charged in customer's local currency for renewal purchase. Tax is not included." + } + } + }, + "ReservationPurchaseRequest": { + "type": "object", + "description": "The request for reservation purchase", + "properties": { + "sku": { + "$ref": "#/definitions/SkuName" + }, + "location": { + "type": "string", + "description": "The Azure region where the reserved resource lives.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReservationPurchaseRequestProperties" + } + } + }, + "Patch": { + "type": "object", + "description": "The request for reservation patch", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PatchProperties" + }, + "sku": { + "$ref": "#/definitions/ReservationSkuProperty", + "description": "The sku information associated to this reservation", + "type": "object" + }, + "tags": { + "description": "Tags for this reservation", + "$ref": "#/definitions/Tags" + } + } + }, + "PatchProperties": { + "type": "object", + "description": "Properties for reservation patch", + "properties": { + "appliedScopeType": { + "$ref": "#/definitions/AppliedScopeType" + }, + "appliedScopeProperties": { + "$ref": "#/definitions/ReservationAppliedScopeProperties" + }, + "instanceFlexibility": { + "$ref": "#/definitions/InstanceFlexibility" + }, + "displayName": { + "type": "string", + "description": "Display name of the reservation" + }, + "renew": { + "$ref": "#/definitions/Renew" + }, + "renewProperties": { + "type": "object", + "x-ms-client-flatten": true, + "properties": { + "purchaseProperties": { + "$ref": "#/definitions/ReservationPurchaseRequest" + } + } + }, + "reviewDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the Azure hybrid benefit needs to be reviewed." + } + } + }, + "Price": { + "type": "object", + "description": "The price.", + "properties": { + "currencyCode": { + "type": "string", + "description": "The ISO 4217 3-letter currency code for the currency used by this purchase record." + }, + "amount": { + "type": "number", + "format": "double" + } + } + }, + "SkuName": { + "type": "object", + "description": "The name of sku", + "properties": { + "name": { + "type": "string" + } + } + }, + "ReservationPurchaseRequestProperties": { + "type": "object", + "description": "Properties of reservation purchase request", + "properties": { + "reservedResourceType": { + "description": "The reserved source type of the reservation, e.g. virtual machine.", + "readOnly": true, + "type": "string" + }, + "billingScopeId": { + "type": "string", + "readOnly": true, + "description": "Subscription that will be charged for purchasing reservation or savings plan" + }, + "term": { + "description": "The term of the reservation, e.g. P1Y", + "readOnly": true, + "type": "string" + }, + "billingPlan": { + "$ref": "#/definitions/ReservationBillingPlan" + }, + "quantity": { + "type": "integer", + "format": "int32", + "description": "Quantity of the skus that are part of the reservation. Must be greater than zero." + }, + "displayName": { + "type": "string", + "description": "Friendly name of the reservation" + }, + "appliedScopeType": { + "$ref": "#/definitions/AppliedScopeType" + }, + "appliedScopes": { + "$ref": "#/definitions/AppliedScopes" + }, + "appliedScopeProperties": { + "$ref": "#/definitions/ReservationAppliedScopeProperties" + }, + "renew": { + "$ref": "#/definitions/Renew" + }, + "reservedResourceProperties": { + "type": "object", + "description": "Properties specific to each reserved resource type. Not required if not applicable.", + "x-ms-client-flatten": true, + "properties": { + "instanceFlexibility": { + "$ref": "#/definitions/InstanceFlexibility" + } + } + }, + "instanceFlexibility": { + "description": "Allows reservation discount to be applied across skus within the same auto fit group. Not all skus support instance size flexibility.", + "$ref": "#/definitions/InstanceFlexibility" + }, + "reviewDateTime": { + "type": "string", + "format": "date-time", + "description": "This is the date-time when the Azure hybrid benefit needs to be reviewed." + } + } + }, + "ReservationBillingPlan": { + "type": "string", + "description": "Represent the billing plans.", + "enum": [ + "Upfront", + "Monthly" + ], + "x-ms-enum": { + "name": "ReservationBillingPlan", + "modelAsString": true + } + }, + "AppliedScopeType": { + "type": "string", + "description": "Type of the Applied Scope.", + "enum": [ + "Single", + "Shared", + "ManagementGroup" + ], + "x-ms-enum": { + "name": "AppliedScopeType", + "modelAsString": true + } + }, + "AppliedScopes": { + "type": "array", + "description": "List of the subscriptions that the benefit will be applied. Do not specify if AppliedScopeType is Shared.", + "items": { + "type": "string", + "minItems": 1, + "maxItems": 1 + }, + "x-ms-identifiers": [] + }, + "ReservationAppliedScopeProperties": { + "type": "object", + "description": "Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup", + "properties": { + "tenantId": { + "type": "string", + "description": "Tenant ID where the reservation should apply benefit." + }, + "managementGroupId": { + "type": "string", + "description": "Fully-qualified identifier of the management group where the benefit must be applied." + }, + "subscriptionId": { + "type": "string", + "description": "Fully-qualified identifier of the subscription." + }, + "resourceGroupId": { + "type": "string", + "description": "Fully-qualified identifier of the resource group." + }, + "displayName": { + "type": "string", + "description": "Display name" + } + } + }, + "Renew": { + "type": "boolean", + "default": false, + "description": "Setting this to true will automatically purchase a new reservation on the expiration date time." + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource Tags" + }, + "ProductCode": { + "type": "string", + "description": "Represents UPN" + }, + "InstanceFlexibility": { + "type": "string", + "description": "Turning this on will apply the reservation discount to other VMs in the same VM size group. Only specify for VirtualMachines reserved resource type.", + "enum": [ + "On", + "Off" + ], + "x-ms-enum": { + "name": "InstanceFlexibility", + "modelAsString": true + } + }, + "ReservationExtendedStatusInfo": { + "type": "object", + "description": "Extended status information for the reservation.", + "properties": { + "statusCode": { + "$ref": "#/definitions/ReservationStatusCode" + }, + "message": { + "type": "string", + "description": "The message giving detailed information about the status code." + }, + "properties": { + "description": "Properties for extended status information", + "$ref": "#/definitions/ExtendedStatusDefinitionProperties" + } + } + }, + "ReservationStatusCode": { + "type": "string", + "description": "The status of the reservation.", + "enum": [ + "None", + "Pending", + "Processing", + "Active", + "PurchaseError", + "PaymentInstrumentError", + "Split", + "Merged", + "Expired", + "Succeeded", + "CapacityError", + "CapacityRestricted", + "Exchanged", + "UnknownError", + "RiskCheckFailed", + "CreditLineCheckFailed", + "Warning", + "NoBenefitDueToSubscriptionTransfer", + "NoBenefitDueToSubscriptionDeletion", + "NoBenefit" + ], + "x-ms-enum": { + "name": "ReservationStatusCode", + "modelAsString": true + } + }, + "ExtendedStatusDefinitionProperties": { + "type": "object", + "description": "Extended status definition properties", + "properties": { + "subscriptionId": { + "type": "string", + "description": "Subscription Id" + } + } + }, + "ReservationSplitProperties": { + "type": "object", + "description": "Properties of reservation split", + "properties": { + "splitDestinations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of destination resource id that are created due to split. Format of the resource id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}" + }, + "splitSource": { + "type": "string", + "description": "Resource id of the reservation from which this is split. Format of the resource id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}" + } + } + }, + "ReservationMergeProperties": { + "type": "object", + "description": "Properties of reservation merge", + "properties": { + "mergeDestination": { + "type": "string", + "description": "Reservation resource id Created due to the merge. Format of the resource id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}" + }, + "mergeSources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Resource ids of the source reservation's merged to form this reservation. Format of the resource id is /providers/Microsoft.Capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}" + } + } + }, + "ReservationSwapProperties": { + "type": "object", + "description": "Properties of reservation swap", + "properties": { + "swapSource": { + "type": "string", + "description": "Resource id of the source reservation that gets swapped. Format of the resource id is /providers/microsoft.capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}" + }, + "swapDestination": { + "type": "string", + "description": "Reservation resource id that the original resource gets swapped to. Format of the resource id is /providers/microsoft.capacity/reservationOrders/{reservationOrderId}/reservations/{reservationId}" + } + } + }, + "ReservationOrderBillingPlanInformation": { + "type": "object", + "description": "Information describing the type of billing plan for this reservation order.", + "properties": { + "pricingCurrencyTotal": { + "$ref": "#/definitions/Price", + "description": "Amount of money to be paid for the Order. Tax is not included." + }, + "startDate": { + "type": "string", + "format": "date", + "description": "Date when the billing plan has started." + }, + "nextPaymentDueDate": { + "type": "string", + "format": "date", + "description": "For recurring billing plans, indicates the date when next payment will be processed. Null when total is paid off." + }, + "transactions": { + "type": "array", + "items": { + "$ref": "#/definitions/ReservationPaymentDetail" + }, + "x-ms-identifiers": [] + } + } + }, + "ReservationPaymentDetail": { + "type": "object", + "description": "Information about payment related to a reservation order.", + "properties": { + "dueDate": { + "type": "string", + "format": "date", + "description": "Date when the payment needs to be done." + }, + "paymentDate": { + "type": "string", + "format": "date", + "description": "Date when the transaction is completed. Is null when it is scheduled." + }, + "pricingCurrencyTotal": { + "$ref": "#/definitions/Price", + "description": "Amount in pricing currency. Tax not included." + }, + "billingCurrencyTotal": { + "$ref": "#/definitions/Price", + "description": "Amount charged in Billing currency. Tax not included. Is null for future payments" + }, + "billingAccount": { + "type": "string", + "description": "Shows the Account that is charged for this payment." + }, + "status": { + "$ref": "#/definitions/PaymentStatus" + }, + "extendedStatusInfo": { + "$ref": "#/definitions/ReservationExtendedStatusInfo" + } + } + }, + "PaymentStatus": { + "type": "string", + "description": "Describes whether the payment is completed, failed, cancelled or scheduled in the future.", + "enum": [ + "Succeeded", + "Failed", + "Scheduled", + "Cancelled", + "Pending", + "Completed" + ], + "x-ms-enum": { + "name": "PaymentStatus", + "modelAsString": true + } + } + }, + "parameters": { + "ExpandParameter": { + "name": "expand", + "description": "May be used to expand the detail information of some properties.", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "string" + }, + "SkipTokenParameter": { + "name": "skiptoken", + "description": "The number of reservations to skip from the list before returning results", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "number" + }, + "TakeParameter": { + "name": "take", + "description": "The number of reservations to return in API response.", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "number" + }, + "SelectedStateParameter": { + "name": "selectedState", + "description": "The selected provisioning state", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "string" + }, + "RefreshSummaryParameter": { + "name": "refreshSummary", + "description": "To indicate whether to refresh the roll up counts of the reservations group by provisioning states", + "in": "query", + "x-ms-parameter-location": "method", + "required": false, + "type": "string" + }, + "ReservationIdParameter": { + "name": "reservationId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Id of the reservation item" + }, + "ReservationOrderIdParameter": { + "name": "reservationOrderId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Order Id of the reservation" + }, + "PatchParameter": { + "name": "body", + "in": "body", + "x-ms-parameter-location": "method", + "required": true, + "description": "Request body for patching a reservation", + "schema": { + "$ref": "#/definitions/Patch" + } + } + }, + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/transaction.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/transaction.json new file mode 100644 index 000000000000..3b0d5852805b --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/transaction.json @@ -0,0 +1,862 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": { + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/transactions": { + "get": { + "tags": [ + "Transaction" + ], + "description": "Lists the billed or unbilled transactions by customer id for given start date and end date. Transactions include purchases, refunds and Azure usage charges. Unbilled transactions are listed under pending invoice Id and do not include tax. Tax is added to the amount once an invoice is generated.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Transactions_ListByCustomer", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "in": "query", + "name": "periodStartDate", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", + "required": true, + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "periodEndDate", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", + "required": true, + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "type", + "description": "The type of transaction.", + "required": true, + "type": "string", + "enum": [ + "Other", + "Billed", + "Unbilled" + ], + "x-ms-enum": { + "name": "TransactionType", + "modelAsString": true + } + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of transactions.", + "schema": { + "$ref": "#/definitions/TransactionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TransactionsListByCustomer": { + "$ref": "./examples/transactionsListByCustomer.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/transactions": { + "get": { + "tags": [ + "Transaction" + ], + "description": "Lists the billed or unbilled transactions by invoice section name for given start date and end date. Transactions include purchases, refunds and Azure usage charges. Unbilled transactions are listed under pending invoice Id and do not include tax. Tax is added to the amount once an invoice is generated.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Transactions_ListByInvoiceSection", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "in": "query", + "name": "periodStartDate", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", + "required": true, + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "periodEndDate", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", + "required": true, + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "type", + "description": "The type of transaction.", + "required": true, + "type": "string", + "enum": [ + "Other", + "Billed", + "Unbilled" + ], + "x-ms-enum": { + "name": "TransactionType", + "modelAsString": true + } + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of transactions.", + "schema": { + "$ref": "#/definitions/TransactionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TransactionsListByInvoiceSection": { + "$ref": "./examples/transactionsListByInvoiceSection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/transactions": { + "get": { + "tags": [ + "Transaction" + ], + "description": "Lists the billed or unbilled transactions by billing profile name for given start and end date. Transactions include purchases, refunds and Azure usage charges. Unbilled transactions are listed under pending invoice Id and do not include tax. Tax is added to the amount once an invoice is generated.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Transactions_ListByBillingProfile", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "in": "query", + "name": "periodStartDate", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", + "required": true, + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "periodEndDate", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", + "required": true, + "type": "string", + "format": "date" + }, + { + "in": "query", + "name": "type", + "description": "The type of transaction.", + "required": true, + "type": "string", + "enum": [ + "Other", + "Billed", + "Unbilled" + ], + "x-ms-enum": { + "name": "TransactionType", + "modelAsString": true + } + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of transactions.", + "schema": { + "$ref": "#/definitions/TransactionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TransactionsListByBillingProfile": { + "$ref": "./examples/transactionsListByBillingProfile.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/transactions": { + "get": { + "tags": [ + "Transaction" + ], + "description": "Lists the transactions for an invoice. Transactions include purchases, refunds and Azure usage charges.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Transactions_ListByInvoice", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "$ref": "./types.json#/parameters/filter" + }, + { + "$ref": "./types.json#/parameters/orderBy" + }, + { + "$ref": "./types.json#/parameters/top" + }, + { + "$ref": "./types.json#/parameters/skip" + }, + { + "$ref": "./types.json#/parameters/count" + }, + { + "$ref": "./types.json#/parameters/search" + } + ], + "responses": { + "200": { + "description": "The list of transactions.", + "schema": { + "$ref": "#/definitions/TransactionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TransactionsListByInvoice": { + "$ref": "./examples/transactionsListByInvoice.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/transactionsDownload": { + "post": { + "tags": [ + "Transaction" + ], + "description": "Gets a URL to download the transactions document for an invoice. The operation is supported for billing accounts with agreement type Enterprise Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Transactions_TransactionsDownloadByInvoice", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secure URL that can be used to download a an entity until the URL expires.", + "schema": { + "$ref": "#/definitions/DocumentDownloadResult" + } + }, + "202": { + "description": "An operation accepted result that returns a 'Location' header that the client can poll to view the result of the operation.", + "headers": { + "Location": { + "type": "string" + }, + "Retry-After": { + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "TransactionsDownloadByInvoice": { + "$ref": "./examples/transactionsDownloadByInvoice.json" + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/transactionSummary": { + "get": { + "tags": [ + "Transaction" + ], + "description": "Gets the transaction summary for an invoice. Transactions include purchases, refunds and Azure usage charges.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "operationId": "Transactions_GetTransactionSummaryByInvoice", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/invoiceName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + }, + { + "in": "query", + "name": "filter", + "description": "The filter query option allows clients to filter the line items that are aggregated to create the line item summary.", + "type": "string" + }, + { + "in": "query", + "name": "search", + "description": "The search query option allows clients to filter the line items that are aggregated to create the line item summary.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "A transaction summary.", + "schema": { + "$ref": "#/definitions/TransactionSummary" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TransactionSummaryGetByInvoice": { + "$ref": "./examples/transactionSummaryGetByInvoice.json" + } + } + } + } + }, + "definitions": { + "DocumentDownloadResult": { + "description": "A secure URL that can be used to download a an entity until the URL expires.", + "type": "object", + "properties": { + "expiryTime": { + "description": "The time in UTC when the download URL will expire.", + "type": "string", + "readOnly": true + }, + "url": { + "description": "The URL to the PDF or .zip file.", + "type": "string", + "readOnly": true + } + } + }, + "RefundTransactionDetails": { + "description": "The refund details of a transaction.", + "type": "object", + "properties": { + "amountRequested": { + "description": "The amount of refund requested.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "amountRefunded": { + "description": "The amount refunded.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "refundOperationId": { + "description": "The ID of refund operation.", + "type": "string" + } + } + }, + "Transaction": { + "description": "A transaction.", + "type": "object", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/TransactionProperties" + } + }, + "x-ms-azure-resource": true + }, + "TransactionListResult": { + "description": "A container for a list of resources", + "type": "object", + "properties": { + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The list of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Transaction" + }, + "readOnly": true, + "x-ms-identifiers": [ + "id" + ] + } + } + }, + "TransactionProperties": { + "description": "A transaction.", + "type": "object", + "properties": { + "azureCreditApplied": { + "description": "The amount of any Azure credits automatically applied to this transaction.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "azurePlan": { + "description": "Details of the Azure plan.", + "type": "string" + }, + "billingCurrency": { + "description": "The ISO 4217 code for the currency in which this transaction is billed.", + "type": "string" + }, + "billingProfileDisplayName": { + "description": "The name of the billing profile." + }, + "billingProfileId": { + "description": "The fully qualified ID that uniquely identifies a billing profile.", + "type": "string" + }, + "consumptionCommitmentDecremented": { + "description": "The amount of Microsoft Azure Consumption Commitment(MACC) decrement through the transaction.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "customerDisplayName": { + "description": "The name of the customer.", + "type": "string" + }, + "customerId": { + "description": "The fully qualified ID that uniquely identifies a customer.", + "type": "string" + }, + "creditType": { + "description": "The credit type of the transaction. Applies only to credited transactions.", + "enum": [ + "Other", + "AzureFreeCredit", + "AzureCreditOffer", + "ServiceInterruption", + "Refund" + ], + "type": "string", + "x-ms-enum": { + "name": "CreditType", + "modelAsString": true + } + }, + "date": { + "format": "date-time", + "description": "The date of transaction.", + "type": "string" + }, + "discount": { + "description": "The percentage discount, if any, applied to this transaction.", + "type": "number" + }, + "effectivePrice": { + "description": "The price of the product after applying any discounts.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "exchangeRate": { + "description": "The exchange rate used to convert charged amount to billing currency, if applicable.", + "type": "number" + }, + "invoice": { + "description": "Invoice name on which the transaction was billed or 'Pending' if the transaction is not billed.", + "type": "string" + }, + "invoiceId": { + "description": "The fully qualified ID of the invoice on which the transaction was billed. This field is only applicable for transactions which are billed.", + "type": "string" + }, + "invoiceSectionDisplayName": { + "description": "The name of the invoice section.", + "type": "string" + }, + "invoiceSectionId": { + "description": "The fully qualified ID that uniquely identifies an invoice section.", + "type": "string" + }, + "isThirdParty": { + "description": "Whether or not the transaction is third party.", + "type": "boolean" + }, + "kind": { + "description": "Type of the transaction, billed or unbilled.", + "enum": [ + "Other", + "All", + "Reservation" + ], + "type": "string", + "x-ms-enum": { + "name": "TransactionKind", + "modelAsString": true + } + }, + "marketPrice": { + "description": "The retail price of the product.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "partNumber": { + "description": "The part number of the product for which the transaction took place. The field is only applicable for Enterprise Agreement invoices.", + "type": "string" + }, + "pricingCurrency": { + "description": "The ISO 4217 code for the currency in which the product is priced.", + "type": "string" + }, + "productDescription": { + "description": "The description of the product for which the transaction took place.", + "type": "string" + }, + "productFamily": { + "description": "The family of the product for which the transaction took place.", + "type": "string" + }, + "productTypeId": { + "description": "The ID of the product type for which the transaction took place.", + "type": "string" + }, + "productType": { + "description": "The type of the product for which the transaction took place.", + "type": "string" + }, + "quantity": { + "format": "int32", + "description": "The quantity purchased in the transaction.", + "type": "integer" + }, + "reasonCode": { + "description": "There reason code for the transaction.", + "type": "string" + }, + "servicePeriodStartDate": { + "format": "date-time", + "description": "The date of the purchase of the product, or the start date of the month in which usage started.", + "type": "string" + }, + "servicePeriodEndDate": { + "format": "date-time", + "description": "The end date of the product term, or the end date of the month in which usage ended.", + "type": "string" + }, + "subTotal": { + "description": "The pre-tax charged amount for the transaction.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "tax": { + "description": "The tax amount applied to the transaction.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "transactionAmount": { + "description": "The charge associated with the transaction.", + "allOf": [ + { + "$ref": "./types.json#/definitions/Amount" + } + ] + }, + "transactionType": { + "description": "The type of transaction.", + "type": "string" + }, + "units": { + "description": "The number of units used for a given product.", + "type": "number" + }, + "unitOfMeasure": { + "description": "The unit of measure used to bill for the product. For example, compute services are billed per hour.", + "type": "string" + }, + "unitType": { + "description": "The description for the unit of measure for a given product.", + "type": "string" + }, + "specialTaxationType": { + "description": "Identifies the type of tax calculation used for the invoice. The field is applicable only to invoices with special tax calculation logic.", + "enum": [ + "SubtotalLevel", + "InvoiceLevel" + ], + "type": "string", + "x-ms-enum": { + "name": "SpecialTaxationType", + "modelAsString": true + } + }, + "refundTransactionDetails": { + "description": "The refund details of a transaction.", + "allOf": [ + { + "$ref": "#/definitions/RefundTransactionDetails" + } + ] + } + } + }, + "TransactionSummary": { + "description": "A transaction summary.", + "type": "object", + "properties": { + "azureCreditApplied": { + "description": "The total amount of any Azure credits applied.", + "type": "number", + "readOnly": true + }, + "billingCurrency": { + "description": "The ISO 4217 code for the currency in which the transactions are billed.", + "type": "string", + "readOnly": true + }, + "consumptionCommitmentDecremented": { + "description": "The total Microsoft Azure Consumption Commitment (MACC) decrement through the invoice.", + "type": "number", + "readOnly": true + }, + "subTotal": { + "description": "The total pre-tax charged amount.", + "type": "number", + "readOnly": true + }, + "tax": { + "description": "The total tax amount applied.", + "type": "number", + "readOnly": true + }, + "total": { + "description": "The total charges.", + "type": "number", + "readOnly": true + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ] +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/transfers.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/transfers.json new file mode 100644 index 000000000000..8163afc7ea57 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/transfers.json @@ -0,0 +1,1225 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-04-01", + "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/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/transfers/{transferName}": { + "get": { + "tags": [ + "Transfers" + ], + "description": "Gets a transfer request by ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "operationId": "Transfers_Get", + "x-ms-examples": { + "TransferGet": { + "$ref": "./examples/transfersGet.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Details of transfer.", + "schema": { + "$ref": "#/definitions/TransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Transfers" + ], + "description": "Sends a request to a user in another billing account to transfer billing ownership of their subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "operationId": "Transfers_Initiate", + "x-ms-examples": { + "InitiateTransfer": { + "$ref": "./examples/transfersInitiate.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InitiateTransferRequest" + }, + "description": "Request parameters that are provided to the initiate transfer operation." + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Initiated transfer details.", + "schema": { + "$ref": "#/definitions/TransferDetails" + } + }, + "201": { + "description": "Initiated transfer details.", + "schema": { + "$ref": "#/definitions/TransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/transfers/{transferName}/cancel": { + "post": { + "tags": [ + "Transfers" + ], + "description": "Cancels a transfer request. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "operationId": "Transfers_Cancel", + "x-ms-examples": { + "TransferCancel": { + "$ref": "./examples/transfersCancel.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Details of canceled transfer.", + "schema": { + "$ref": "#/definitions/TransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/transfers": { + "get": { + "tags": [ + "Transfers" + ], + "description": "Lists the transfer requests for an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", + "operationId": "Transfers_List", + "x-ms-examples": { + "TransfersList": { + "$ref": "./examples/transfersList.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/invoiceSectionName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of transfers initiated from this invoice section.", + "schema": { + "$ref": "#/definitions/TransferDetailsListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/transfers/{transferName}": { + "get": { + "tags": [ + "Transfers" + ], + "description": "Gets a transfer request by ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "operationId": "PartnerTransfers_Get", + "x-ms-examples": { + "PartnerTransferGet": { + "$ref": "./examples/partnerTransfersGet.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Details of transfer.", + "schema": { + "$ref": "#/definitions/PartnerTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Transfers" + ], + "description": "Sends a request to a user in a customer's billing account to transfer billing ownership of their subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "operationId": "PartnerTransfers_Initiate", + "x-ms-examples": { + "InitiatePartnerTransfer": { + "$ref": "./examples/partnerTransfersInitiate.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PartnerInitiateTransferRequest" + }, + "description": "Request parameters that are provided to the initiate transfer operation." + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Initiated transfer details.", + "schema": { + "$ref": "#/definitions/PartnerTransferDetails" + } + }, + "201": { + "description": "Initiated transfer details.", + "schema": { + "$ref": "#/definitions/PartnerTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/transfers/{transferName}/cancel": { + "post": { + "tags": [ + "Transfers" + ], + "description": "Cancels a transfer request. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "operationId": "PartnerTransfers_Cancel", + "x-ms-examples": { + "PartnerTransferCancel": { + "$ref": "./examples/partnerTransfersCancel.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Details of canceled transfer.", + "schema": { + "$ref": "#/definitions/PartnerTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/customers/{customerName}/transfers": { + "get": { + "tags": [ + "Transfers" + ], + "description": "Lists the transfer requests sent to a customer. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", + "operationId": "PartnerTransfers_List", + "x-ms-examples": { + "PartnerTransfersList": { + "$ref": "./examples/partnerTransfersList.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/billingAccountName" + }, + { + "$ref": "./types.json#/parameters/billingProfileName" + }, + { + "$ref": "./types.json#/parameters/customerName" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of transfers initiated from this invoice section.", + "schema": { + "$ref": "#/definitions/PartnerTransferDetailsListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/transfers/{transferName}/accept": { + "post": { + "tags": [ + "RecipientTransfers" + ], + "summary": "Accepts a transfer request.", + "operationId": "RecipientTransfers_Accept", + "x-ms-examples": { + "AcceptTransfer": { + "$ref": "./examples/recipientTransfersAccept.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AcceptTransferRequest" + }, + "description": "Request parameters that are provided to the accept transfer operation." + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Details of the accepted transfer.", + "schema": { + "$ref": "#/definitions/RecipientTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/transfers/{transferName}/validate": { + "post": { + "tags": [ + "RecipientTransfers" + ], + "summary": "Validates if a subscription or a reservation can be transferred. Use this operation to validate your subscriptions or reservation before using the accept transfer operation.", + "operationId": "RecipientTransfers_Validate", + "x-ms-examples": { + "ValidateTransfer": { + "$ref": "./examples/recipientTransfersValidate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AcceptTransferRequest" + }, + "description": "Request parameters that are provided to the validate transfer operation." + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Results of the transfer validation.", + "schema": { + "$ref": "#/definitions/ValidateTransferListResponse" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/transfers/{transferName}/decline": { + "post": { + "tags": [ + "RecipientTransfers" + ], + "summary": "Declines a transfer request.", + "operationId": "RecipientTransfers_Decline", + "x-ms-examples": { + "DeclineTransfer": { + "$ref": "./examples/recipientTransfersDecline.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Details of the declined transfer.", + "schema": { + "$ref": "#/definitions/RecipientTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/transfers/{transferName}": { + "get": { + "tags": [ + "RecipientTransfers" + ], + "summary": "Gets a transfer request by ID. The caller must be the recipient of the transfer request.", + "operationId": "RecipientTransfers_Get", + "x-ms-examples": { + "RecipientTransferGet": { + "$ref": "./examples/recipientTransfersGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/transferNameParameter" + }, + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Details of the transfers with given Id.", + "schema": { + "$ref": "#/definitions/RecipientTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/transfers": { + "get": { + "tags": [ + "RecipientTransfers" + ], + "summary": "Lists the transfer requests received by the caller.", + "operationId": "RecipientTransfers_List", + "x-ms-examples": { + "RecipientTransfersList": { + "$ref": "./examples/recipientTransfersList.json" + } + }, + "parameters": [ + { + "$ref": "./types.json#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of transfers received by caller.", + "schema": { + "$ref": "#/definitions/RecipientTransferDetailsListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-odata": "#/definitions/TransferItemQueryParameter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "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": { + "recipientEmailId": { + "type": "string", + "description": "The email ID of the recipient to whom the transfer request is sent." + } + } + }, + "PartnerInitiateTransferRequest": { + "type": "object", + "description": "Request parameters to initiate partner transfer.", + "properties": { + "properties": { + "description": "Request parameters to initiate partner transfer.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PartnerInitiateTransferProperties" + } + } + }, + "PartnerInitiateTransferProperties": { + "type": "object", + "description": "Request parameters to initiate transfer.", + "properties": { + "recipientEmailId": { + "type": "string", + "description": "The email ID of the recipient to whom the transfer request is sent." + }, + "resellerId": { + "type": "string", + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account." + } + } + }, + "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" + }, + "x-ms-identifiers": [] + } + } + }, + "ProductDetails": { + "type": "object", + "description": "Details of the product that is transferred.", + "properties": { + "productType": { + "description": "Type of the product that is transferred.", + "$ref": "#/definitions/ProductType" + }, + "productId": { + "type": "string", + "description": "The ID of the product that is transferred." + } + } + }, + "ProductType": { + "type": "string", + "description": "The type of product that is transferred.", + "enum": [ + "AzureSubscription", + "AzureReservation", + "Department", + "SavingsPlan", + "SAAS" + ], + "x-ms-enum": { + "name": "productType", + "modelAsString": true + } + }, + "TransferDetails": { + "type": "object", + "description": "Details of the transfer.", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "description": "Details of the transfer.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TransferProperties" + } + } + }, + "PartnerTransferDetails": { + "type": "object", + "description": "Details of the transfer.", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "properties": { + "properties": { + "description": "Details of the transfer.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PartnerTransferProperties" + } + } + }, + "RecipientTransferDetails": { + "type": "object", + "description": "Details of the transfer.", + "allOf": [ + { + "$ref": "./types.json#/definitions/ProxyResourceWithTags" + } + ], + "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 that is transferred." + }, + "productId": { + "type": "string", + "readOnly": true, + "description": "The ID of the product that is transferred." + }, + "productName": { + "type": "string", + "readOnly": true, + "description": "The name of the product that is transferred." + }, + "skuDescription": { + "type": "string", + "readOnly": true, + "description": "The SKU of the product that is transferred." + }, + "transferStatus": { + "type": "string", + "$ref": "#/definitions/ProductTransferStatus", + "readOnly": true, + "description": "Transfer status." + }, + "errorDetails": { + "description": "Error details for transfer execution.", + "$ref": "#/definitions/TransferError" + } + } + }, + "TransferError": { + "type": "object", + "description": "Error details for transfer execution.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "Error code." + }, + "message": { + "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": { + "expirationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The time at which the transfer request expires." + }, + "transferStatus": { + "type": "string", + "$ref": "#/definitions/TransferStatus", + "description": "Overall transfer status.", + "readOnly": true + }, + "recipientEmailId": { + "type": "string", + "readOnly": true, + "description": "The email ID of the user to whom the transfer request was sent." + }, + "initiatorEmailId": { + "type": "string", + "readOnly": true, + "description": "The email ID of the user who sent the transfer request." + }, + "canceledBy": { + "type": "string", + "readOnly": true, + "description": "The email ID of the user who canceled the transfer request." + }, + "detailedTransferStatus": { + "type": "array", + "readOnly": true, + "description": "Detailed transfer status.", + "items": { + "$ref": "#/definitions/DetailedTransferStatus" + }, + "x-ms-identifiers": [] + } + } + }, + "PartnerTransferProperties": { + "description": "Transfer Details.", + "type": "object", + "properties": { + "expirationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The time at which the transfer request expires." + }, + "transferStatus": { + "type": "string", + "$ref": "#/definitions/TransferStatus", + "description": "Overall transfer status.", + "readOnly": true + }, + "recipientEmailId": { + "type": "string", + "readOnly": true, + "description": "The email ID of the user to whom the transfer request was sent." + }, + "initiatorCustomerType": { + "type": "string", + "$ref": "#/definitions/InitiatorCustomerType", + "description": "The type of customer who sent the transfer request.", + "readOnly": true + }, + "initiatorEmailId": { + "type": "string", + "readOnly": true, + "description": "The email ID of the user who sent the transfer request." + }, + "resellerId": { + "type": "string", + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account.", + "readOnly": true + }, + "resellerName": { + "type": "string", + "description": "Optional name of the reseller for transfer requests that are sent from Microsoft Partner Agreement billing account.", + "readOnly": true + }, + "canceledBy": { + "type": "string", + "readOnly": true, + "description": "The email ID of the user who canceled the transfer request." + }, + "detailedTransferStatus": { + "type": "array", + "readOnly": true, + "description": "Detailed transfer status.", + "items": { + "$ref": "#/definitions/DetailedTransferStatus" + }, + "x-ms-identifiers": [] + } + } + }, + "RecipientTransferProperties": { + "description": "Transfer Details.", + "type": "object", + "properties": { + "expirationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The time at which the transfer request expires." + }, + "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": "The email ID of the user to whom the transfer request was sent." + }, + "initiatorEmailId": { + "type": "string", + "readOnly": true, + "description": "The email ID of the user who sent the transfer request." + }, + "resellerId": { + "type": "string", + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account.", + "readOnly": true + }, + "resellerName": { + "type": "string", + "description": "Optional name of the reseller for transfer requests that are sent from Microsoft Partner Agreement billing account.", + "readOnly": true + }, + "initiatorCustomerType": { + "type": "string", + "description": "The type of customer who sent the transfer request.", + "$ref": "#/definitions/InitiatorCustomerType", + "readOnly": true + }, + "canceledBy": { + "type": "string", + "readOnly": true, + "description": "The email ID of the user who canceled the transfer request." + }, + "detailedTransferStatus": { + "type": "array", + "readOnly": true, + "description": "Detailed transfer status.", + "items": { + "$ref": "#/definitions/DetailedTransferStatus" + }, + "x-ms-identifiers": [] + }, + "customerTenantId": { + "type": "string", + "description": "The customer tenant id.", + "readOnly": true + }, + "supportedAccounts": { + "type": "array", + "readOnly": true, + "description": "List of supported account types.", + "items": { + "$ref": "#/definitions/SupportedAccountType" + } + } + } + }, + "InitiatorCustomerType": { + "type": "string", + "description": "The type of customer of the transfer initiator.", + "enum": [ + "Partner", + "EA" + ], + "x-ms-enum": { + "name": "initiatorCustomerType", + "modelAsString": true + } + }, + "TransferStatus": { + "type": "string", + "description": "The status of a transfer.", + "enum": [ + "Expired", + "Pending", + "InProgress", + "Completed", + "CompletedWithErrors", + "Failed", + "Canceled", + "Declined" + ], + "x-ms-enum": { + "name": "transferStatus", + "modelAsString": true + } + }, + "ProductTransferStatus": { + "type": "string", + "description": "The status of a transfer.", + "enum": [ + "NotStarted", + "InProgress", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "productTransferStatus", + "modelAsString": true + } + }, + "PartnerTransferDetailsListResult": { + "type": "object", + "description": "The list of transfers initiated by partner.", + "properties": { + "value": { + "description": "The list of transfers initiated by partner.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PartnerTransferDetails" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RecipientTransferDetailsListResult": { + "type": "object", + "description": "The list of transfers 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": { + "type": "object", + "description": "The list of transfers 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 + } + } + }, + "ValidateTransferResponse": { + "type": "object", + "description": "Transfer validation response.", + "properties": { + "properties": { + "description": "The properties of transfer validation response.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ValidateTransferResponseProperties" + } + } + }, + "ValidateTransferListResponse": { + "type": "object", + "description": "Result of transfer validation.", + "properties": { + "value": { + "description": "The list of transfer validation results.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ValidateTransferResponse" + }, + "x-ms-identifiers": [] + } + } + }, + "ValidateTransferResponseProperties": { + "type": "object", + "description": "The properties of transfer validation response.", + "properties": { + "status": { + "description": "The status of validation", + "type": "string", + "readOnly": true + }, + "productId": { + "description": "The product id for which this result applies.", + "type": "string", + "readOnly": true + }, + "results": { + "description": "The array of validation results.", + "type": "array", + "items": { + "$ref": "#/definitions/ValidationResultProperties" + }, + "x-ms-identifiers": [] + } + } + }, + "ValidationResultProperties": { + "type": "object", + "description": "The properties of the validation result.", + "properties": { + "level": { + "description": "Result Level.", + "type": "string", + "readOnly": true + }, + "code": { + "description": "Result Code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The validation message.", + "type": "string", + "readOnly": true + } + } + }, + "SupportedAccountType": { + "type": "string", + "description": "The supported account types.", + "enum": [ + "None", + "Partner", + "Individual", + "Enterprise" + ], + "x-ms-enum": { + "name": "supportedAccountType", + "modelAsString": true + } + }, + "TransferItemQueryParameter": { + "description": "Query parameter to enumerate transfer requests.", + "type": "object", + "properties": { + "state": { + "description": "State of the transfer request query filter.", + "type": "string" + } + } + } + }, + "parameters": { + "transferNameParameter": { + "name": "transferName", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "The ID that uniquely identifies a transfer request.", + "pattern": "^[a-z0-9]*$" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/types.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/types.json new file mode 100644 index 000000000000..1d1e52f8e390 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2024-04-01/types.json @@ -0,0 +1,363 @@ +{ + "swagger": "2.0", + "info": { + "title": "BillingManagementClient", + "description": "Documentation for Microsoft.Billing.", + "contact": { + "name": "Microsoft.Billing", + "url": "https://learn.microsoft.com/en-us/rest/api/billing/", + "email": "pacebpexphot@microsoft.com" + }, + "version": "2024-04-01" + }, + "paths": {}, + "definitions": { + "ProxyResourceWithTags": { + "description": "Common fields that are returned in the response for all Azure Resource Manager resources.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "tags": { + "description": "Dictionary of metadata associated with the resource. It may not be populated for all resource types. Maximum key/value length supported of 256 characters. Keys/value should not empty value nor null. Keys can not contain < > % & \\ ? /", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "Amount": { + "description": "The amount.", + "type": "object", + "properties": { + "currency": { + "description": "The currency for the amount value.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The amount value. For example, if the currency is USD, then a value of 600 would be $600.00.", + "type": "number", + "readOnly": true + } + }, + "readOnly": true + }, + "AddressDetails": { + "description": "Address details.", + "required": [ + "addressLine1", + "country" + ], + "type": "object", + "properties": { + "addressLine1": { + "description": "Address line 1.", + "minLength": 1, + "type": "string" + }, + "addressLine2": { + "description": "Address line 2.", + "type": "string" + }, + "addressLine3": { + "description": "Address line 3.", + "type": "string" + }, + "city": { + "description": "Address city.", + "type": "string" + }, + "companyName": { + "description": "Company name. Optional for MCA Individual (Pay-as-you-go).", + "type": "string" + }, + "country": { + "description": "Country code uses ISO 3166-1 Alpha-2 format.", + "minLength": 1, + "type": "string" + }, + "district": { + "description": "Address district.", + "type": "string" + }, + "email": { + "description": "Email address.", + "type": "string" + }, + "firstName": { + "description": "First name. Optional for MCA Enterprise.", + "type": "string" + }, + "lastName": { + "description": "Last name. Optional for MCA Enterprise.", + "type": "string" + }, + "middleName": { + "description": "Middle name.", + "type": "string" + }, + "phoneNumber": { + "description": "Phone number.", + "type": "string" + }, + "postalCode": { + "description": "Postal code.", + "type": "string" + }, + "region": { + "description": "Address region.", + "type": "string" + }, + "isValidAddress": { + "description": "Indicates if the address is incomplete.", + "type": "boolean" + } + } + }, + "AzurePlan": { + "description": "Details of the Azure plan.", + "type": "object", + "properties": { + "productId": { + "description": "The ID that uniquely identifies a product.", + "type": "string" + }, + "skuId": { + "description": "The ID that uniquely identifies a sku.", + "type": "string" + }, + "skuDescription": { + "description": "The sku description.", + "type": "string" + } + } + }, + "IndirectRelationshipInfo": { + "description": "Identifies the billing profile that is linked to another billing profile in indirect purchase motion.", + "type": "object", + "properties": { + "billingAccountName": { + "description": "The billing account name of the partner or the customer for an indirect motion.", + "type": "string" + }, + "billingProfileName": { + "description": "The billing profile name of the partner or the customer for an indirect motion.", + "type": "string" + }, + "displayName": { + "description": "The display name of the partner or customer for an indirect motion.", + "type": "string" + } + } + }, + "PatchResource": { + "description": "Common fields that are in the patch method request body of all Azure Resource Manager patch resources.", + "type": "object" + }, + "Reseller": { + "description": "Details of the reseller.", + "type": "object", + "properties": { + "resellerId": { + "description": "The MPN ID of the reseller.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The name of the reseller.", + "type": "string", + "readOnly": true + } + }, + "readOnly": true + } + }, + "parameters": { + "billingAccountName": { + "in": "path", + "name": "billingAccountName", + "description": "The ID that uniquely identifies a billing account.", + "required": true, + "type": "string", + "pattern": "^([0-9]+|([Pp][Cc][Nn]\\.[A-Za-z0-9]+)|[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}(:[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}_[0-9]{4}(-[0-9]{2}){2})?)$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "The version of the API to be used with the client request. The current version is 2024-04-01.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "associatedTenantName": { + "in": "path", + "name": "associatedTenantName", + "description": "The ID that uniquely identifies a tenant.", + "required": true, + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "x-ms-parameter-location": "method" + }, + "filter": { + "in": "query", + "name": "filter", + "description": "The filter query option allows clients to filter a collection of resources that are addressed by a request URL.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "orderBy": { + "in": "query", + "name": "orderBy", + "description": "The orderby query option allows clients to request resources in a particular order.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "top": { + "in": "query", + "name": "top", + "description": "The top query option requests the number of items in the queried collection to be included in the result. The maximum supported value for top is 50.", + "type": "integer", + "format": "int64", + "x-ms-parameter-location": "method" + }, + "skip": { + "in": "query", + "name": "skip", + "description": "The skip query option requests the number of items in the queried collection that are to be skipped and not included in the result.", + "type": "integer", + "format": "int64", + "x-ms-parameter-location": "method" + }, + "count": { + "in": "query", + "name": "count", + "description": "The count query option allows clients to request a count of the matching resources included with the resources in the response.", + "type": "boolean", + "x-ms-parameter-location": "method" + }, + "search": { + "in": "query", + "name": "search", + "description": "The search query option allows clients to request items within a collection matching a free-text search expression. search is only supported for string fields.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "billingProfileName": { + "in": "path", + "name": "billingProfileName", + "description": "The ID that uniquely identifies a billing profile.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z\\d-_]{1,128}$", + "x-ms-parameter-location": "method" + }, + "customerName": { + "in": "path", + "name": "customerName", + "description": "The ID that uniquely identifies a customer.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z\\d-_]{1,128}$", + "x-ms-parameter-location": "method" + }, + "invoiceSectionName": { + "in": "path", + "name": "invoiceSectionName", + "description": "The ID that uniquely identifies an invoice section.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z\\d-_]{1,128}$", + "x-ms-parameter-location": "method" + }, + "departmentName": { + "in": "path", + "name": "departmentName", + "description": "The name of the department.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z\\d-_]{1,128}$", + "x-ms-parameter-location": "method" + }, + "enrollmentAccountName": { + "in": "path", + "name": "enrollmentAccountName", + "description": "The name of the enrollment account.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z\\d-_]{1,128}$", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "in": "path", + "name": "subscriptionId", + "description": "The ID that uniquely identifies a billing subscription.", + "required": true, + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "x-ms-parameter-location": "client" + }, + "billingRequestName": { + "in": "path", + "name": "billingRequestName", + "description": "The ID that uniquely identifies a billing request.", + "required": true, + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "x-ms-parameter-location": "method" + }, + "billingRoleAssignmentName": { + "in": "path", + "name": "billingRoleAssignmentName", + "description": "The ID that uniquely identifies a role assignment.", + "required": true, + "type": "string", + "pattern": "^[a-fA-F0-9]{8}[-]?([a-fA-F0-9]{4}[-]?){3}[a-fA-F0-9]{12}(_[a-fA-F0-9]{8}[-]?([a-fA-F0-9]{4}[-]?){3}[a-fA-F0-9]{12})?$", + "x-ms-parameter-location": "method" + }, + "roleDefinitionName": { + "in": "path", + "name": "roleDefinitionName", + "description": "The ID that uniquely identifies a role definition.", + "required": true, + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "x-ms-parameter-location": "method" + }, + "invoiceName": { + "in": "path", + "name": "invoiceName", + "description": "The ID that uniquely identifies an invoice.", + "required": true, + "type": "string", + "pattern": "^(H[0-9]-[A-Z0-9]+)$|^(?:([GHT]|HT){1}[A-Z0-9]{9})$|^(?:[D]{1}[A-Z0-9]{9})$|^(?:E{1}[B-Z0-9]{1}[A-Z0-9]{8})$|^(?:EA[A-Z0-9]{8})$", + "x-ms-parameter-location": "method" + }, + "productName": { + "in": "path", + "name": "productName", + "description": "The ID that uniquely identifies a product.", + "required": true, + "type": "string", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow." + } + } +} diff --git a/specification/billing/resource-manager/readme.md b/specification/billing/resource-manager/readme.md index 53a8d6fb2beb..711240e36286 100644 --- a/specification/billing/resource-manager/readme.md +++ b/specification/billing/resource-manager/readme.md @@ -4,10 +4,10 @@ This is the AutoRest configuration file for Billing. - - --- + ## Getting Started + To build the SDK for Billing, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,30 +15,251 @@ To build the SDK for Billing, simply [Install AutoRest](https://aka.ms/autorest/ To see additional help and options, run: > `autorest --help` + --- ## Configuration - - ### Basic Information + These are the global settings for the Billing API. -``` yaml +```yaml openapi-type: arm -tag: package-2020-05 +tag: package-2024-04 +``` + +### Tag: package-2024-04 + +These settings apply only when `--tag=package-2024-04` is specified on the command line. + +These settings apply only when `--tag=package-2024-04` is specified on the command line. + +```yaml $(tag) == 'package-2024-04' +title: BillingManagementClient +description: Billing Client +input-file: +- Microsoft.Billing/stable/2024-04-01/agreement.json +- Microsoft.Billing/stable/2024-04-01/associatedTenant.json +- Microsoft.Billing/stable/2024-04-01/availableBalance.json +- Microsoft.Billing/stable/2024-04-01/billingAccount.json +- Microsoft.Billing/stable/2024-04-01/billingPermission.json +- Microsoft.Billing/stable/2024-04-01/billingProfile.json +- Microsoft.Billing/stable/2024-04-01/billingProperty.json +- Microsoft.Billing/stable/2024-04-01/billingRequest.json +- Microsoft.Billing/stable/2024-04-01/billingRoleAssignment.json +- Microsoft.Billing/stable/2024-04-01/billingRoleDefinition.json +- Microsoft.Billing/stable/2024-04-01/billingSavingsPlan.json +- Microsoft.Billing/stable/2024-04-01/billingSubscription.json +- Microsoft.Billing/stable/2024-04-01/customer.json +- Microsoft.Billing/stable/2024-04-01/department.json +- Microsoft.Billing/stable/2024-04-01/enrollmentAccount.json +- Microsoft.Billing/stable/2024-04-01/invoice.json +- Microsoft.Billing/stable/2024-04-01/invoiceSection.json +- Microsoft.Billing/stable/2024-04-01/operation.json +- Microsoft.Billing/stable/2024-04-01/payment.json +- Microsoft.Billing/stable/2024-04-01/policy.json +- Microsoft.Billing/stable/2024-04-01/product.json +- Microsoft.Billing/stable/2024-04-01/reservation.json +- Microsoft.Billing/stable/2024-04-01/transaction.json +- Microsoft.Billing/stable/2024-04-01/transfers.json +- Microsoft.Billing/stable/2024-04-01/types.json +suppressions: +- code: AllProxyResourcesShouldHaveDelete + from: billingRequest.json + reason: Service design forces behavior +- code: AllProxyResourcesShouldHaveDelete + from: billingSubscription.json + reason: Service design forces behavior +- code: AllProxyResourcesShouldHaveDelete + from: policy.json + reason: Service design forces behavior +- code: AllProxyResourcesShouldHaveDelete + from: transfers.json + reason: Service design forces behavior +- code: AllTrackedResourcesMustHaveDelete + from: reservation.json + reason: Breaking change +- code: AvoidAdditionalProperties + from: billingRequest.json + reason: Service design forces behavior +- code: AvoidAdditionalProperties + from: billingSavingsPlan.json + reason: False positive. Used for "tags" +- code: AvoidAdditionalProperties + from: billingSubscription.json + reason: Breaking change +- code: AvoidAdditionalProperties + from: reservation.json + reason: False positive. Used for "tags" +- code: AvoidAnonymousTypes + from: policy.json + reason: Service design forces behavior +- code: EnumInsteadOfBoolean + from: associatedTenant.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: billingAccount.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: billingProfile.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: billingProperty.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: billingRoleAssignment.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: billingSavingsPlan.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: billingSubscription.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: enrollmentAccount.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: invoice.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: invoiceSection.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: operation.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: product.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: reservation.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: transaction.json + reason: Breaking Change +- code: EnumInsteadOfBoolean + from: types.json + reason: Breaking Change +- code: EvenSegmentedPathForPutOperation + from: policy.json + reason: False positive +- code: GetCollectionOnlyHasValueAndNextLink + from: billingSavingsPlan.json + reason: Blocked on resolving this issue by wide adoption of partner services +- code: GetCollectionOnlyHasValueAndNextLink + from: billingSubscription.json + reason: Breaking change +- code: GetCollectionOnlyHasValueAndNextLink + from: reservation.json + reason: Breaking change +- code: GetCollectionOnlyHasValueAndNextLink + from: transaction.json + reason: Breaking change +- code: ListInOperationName + from: billingRoleAssignment.json + reason: Breaking Change +- code: ListInOperationName + from: transfers.json + reason: Breaking Change +- code: LroErrorContent + reason: Service design that generates API definition. Type defined in local types.json +- code: OperationIdNounConflictingModelNames + from: billingProperty.json + reason: Breaking Change +- code: OperationIdNounConflictingModelNames + from: billingRoleDefinition.json + reason: Breaking Change +- code: OperationIdNounVerb + from: billingSavingsPlan.json + reason: False positive. SavingsPlan is a child resource of SavingsPlanOrder +- code: OperationIdNounVerb + from: reservation.json + reason: False positive. Reservations can be a child resource of ReservationOrder. +- code: OperationIdNounVerb + from: transaction.json + reason: False positive. TransactionSummary is an aggregation of transactions. +- code: OperationsApiSchemaUsesCommonTypes + from: operation.json + reason: Service design that generates API definition. Type defined in local types.json +- code: ParametersInPointGet + reason: Service design forces this behavior +- code: ParametersInPost + from: billingAccount.json + reason: Breaking change +- code: ParametersInPost + from: billingRoleAssignment.json + reason: Service design forces this behavior +- code: ParametersInPost + from: invoice.json + reason: Breaking Change +- code: ParameterNotDefinedInGlobalParameters + reason: Referenced in common types.json file +- code: ParameterNotUsingCommonTypes + reason: Service design forces this behavior +- code: PathForTrackedResourceTypes + from: reservation.json + reason: Breaking change +- code: PostOperationIdContainsUrlVerb + from: billingAccount.json + reason: Breaking Change +- code: PostOperationIdContainsUrlVerb + from: billingRoleAssignment.json + reason: Breaking Change +- code: PutInOperationName + from: transfers.json + reason: Breaking Change +- code: PutRequestResponseSchemeArm + from: transfers.json + reason: Design ensures only recipients choose products, not initiators, for security and access reasons. +- code: PutResponseCodes + from: billingProfile.json + reason: Breaking change +- code: PutResponseCodes + from: billingSubscription.json + reason: Breaking change +- code: PutResponseCodes + from: invoiceSection.json + reason: Breaking change +- code: ResourceNameRestriction + from: billingSubscription.json + reason: Breaking change +- code: ResourceNameRestriction + from: payment.json + reason: Breaking change +- code: TenantLevelAPIsNotAllowed + reason: Specific validation rules do not apply to this service. Microsoft.Billing is a tenant level RP +- code: TopLevelResourcesListBySubscription + reason: Specific validation rules do not apply to this service. Microsoft.Billing is a tenant level RP +- code: TrackedResourcesMustHavePut + from: reservation.json + reason: Breaking change +- code: XmsPageableForListCalls + from: availableBalance.json + reason: Breaking change +- code: XmsPageableForListCalls + from: billingProperty.json + reason: Breaking change +- code: XmsPageableForListCalls + from: policy.json + reason: Breaking change +- code: XmsPageableForListCalls + from: transaction.json + reason: Breaking change +- code: XmsResourceInPutResponse + from: transfers.json + reason: Service design forces this behavior ``` ### Tag: package-2021-10 These settings apply only when `--tag=package-2021-10` is specified on the command line. -``` yaml $(tag) == 'package-2021-10' +```yaml $(tag) == 'package-2021-10' title: BillingManagementClient description: Billing Client input-file: -- Microsoft.Billing/stable/2021-10-01/billingSubscription.json -- Microsoft.Billing/stable/2021-10-01/payment.json + - Microsoft.Billing/stable/2021-10-01/billingSubscription.json + - Microsoft.Billing/stable/2021-10-01/payment.json directive: - suppress: R4009 from: Microsoft.Billing/stable/2021-10-01/billingSubscription.json @@ -52,90 +273,90 @@ directive: These settings apply only when `--tag=package-2020-05` is specified on the command line. -``` yaml $(tag) == 'package-2020-05' +```yaml $(tag) == 'package-2020-05' input-file: -- Microsoft.Billing/stable/2020-05-01/billing.json -- Microsoft.Billing/preview/2018-03-01-preview/billingV2.json -- Microsoft.Billing/stable/2020-05-01/billingOperations.json + - Microsoft.Billing/stable/2020-05-01/billing.json + - Microsoft.Billing/preview/2018-03-01-preview/billingV2.json + - Microsoft.Billing/stable/2020-05-01/billingOperations.json ``` ### Tag: package-2020-09-preview These settings apply only when `--tag=package-2020-09-preview` is specified on the command line. -``` yaml $(tag) == 'package-2020-09-preview' +```yaml $(tag) == 'package-2020-09-preview' input-file: -- Microsoft.Billing/stable/2020-05-01/billing.json -- Microsoft.Billing/preview/2020-09-01-preview/billingPromotions.json -- Microsoft.Billing/preview/2020-09-01-preview/billingOperations.json + - Microsoft.Billing/stable/2020-05-01/billing.json + - Microsoft.Billing/preview/2020-09-01-preview/billingPromotions.json + - Microsoft.Billing/preview/2020-09-01-preview/billingOperations.json ``` ### Tag: package-2020-11-preview These settings apply only when `--tag=package-2020-11-preview` is specified on the command line. -``` yaml $(tag) == 'package-2020-11-preview' +```yaml $(tag) == 'package-2020-11-preview' input-file: -- Microsoft.Billing/stable/2020-05-01/billing.json -- Microsoft.Billing/preview/2020-11-01-preview/billingPromotions.json -- Microsoft.Billing/preview/2020-11-01-preview/billingOperations.json + - Microsoft.Billing/stable/2020-05-01/billing.json + - Microsoft.Billing/preview/2020-11-01-preview/billingPromotions.json + - Microsoft.Billing/preview/2020-11-01-preview/billingOperations.json ``` ### Tag: package-2019-10-preview These settings apply only when `--tag=package-2019-10-preview` is specified on the command line. -``` yaml $(tag) == 'package-2019-10-preview' +```yaml $(tag) == 'package-2019-10-preview' input-file: -- Microsoft.Billing/preview/2019-10-01-preview/billing.json + - Microsoft.Billing/preview/2019-10-01-preview/billing.json ``` ### Tag: package-2018-11-preview These settings apply only when `--tag=package-2018-11-preview` is specified on the command line. -``` yaml $(tag) == 'package-2018-11-preview' +```yaml $(tag) == 'package-2018-11-preview' input-file: -- Microsoft.Billing/preview/2018-11-01-preview/billing.json + - Microsoft.Billing/preview/2018-11-01-preview/billing.json ``` ### Tag: package-2018-03-preview These settings apply only when `--tag=package-2018-03-preview` is specified on the command line. -``` yaml $(tag) == 'package-2018-03-preview' +```yaml $(tag) == 'package-2018-03-preview' input-file: -- Microsoft.Billing/preview/2018-03-01-preview/billing.json + - Microsoft.Billing/preview/2018-03-01-preview/billing.json ``` ### Tag: package-2017-04-preview These settings apply only when `--tag=package-2017-04-preview` is specified on the command line. -``` yaml $(tag) == 'package-2017-04-preview' +```yaml $(tag) == 'package-2017-04-preview' input-file: -- Microsoft.Billing/preview/2017-04-24-preview/billing.json + - Microsoft.Billing/preview/2017-04-24-preview/billing.json ``` ### Tag: package-2017-02-preview These settings apply only when `--tag=package-2017-02-preview` is specified on the command line. -``` yaml $(tag) == 'package-2017-02-preview' +```yaml $(tag) == 'package-2017-02-preview' input-file: -- Microsoft.Billing/preview/2017-02-27-preview/billing.json + - Microsoft.Billing/preview/2017-02-27-preview/billing.json ``` --- -# Code Generation +# 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) +```yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net-track2 - repo: azure-sdk-for-python @@ -151,13 +372,12 @@ swagger-to-sdk: - repo: azure-powershell ``` - ## C# These settings apply only when `--csharp` is specified on the command line. Please also specify `--csharp-sdks-folder=`. -``` yaml $(csharp) +```yaml $(csharp) csharp: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -179,7 +399,7 @@ See configuration in [readme.go.md](./readme.go.md) These settings apply only when `--java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. -``` yaml $(java) +```yaml $(java) azure-arm: true fluent: true namespace: com.microsoft.azure.management.billing @@ -190,7 +410,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-billing ### Java multi-api -``` yaml $(java) && $(multiapi) +```yaml $(java) && $(multiapi) batch: - tag: package-2021-10 - tag: package-2020-05 @@ -206,7 +426,7 @@ batch: These settings apply only when `--tag=package-2021-10 --java` is specified on the command line. Please also specify `--azure-libraries-for-java=`. -``` yaml $(tag) == 'package-2021-10' && $(java) && $(multiapi) +```yaml $(tag) == 'package-2021-10' && $(java) && $(multiapi) java: namespace: com.microsoft.azure.management.billing.v2021_10_01 output-folder: $(azure-libraries-for-java-folder)/sdk/billing/mgmt-v2021_10_01 @@ -219,7 +439,7 @@ generate-interface: true These settings apply only when `--tag=package-2020-05 --java` is specified on the command line. Please also specify `--azure-libraries-for-java=`. -``` yaml $(tag) == 'package-2020-05' && $(java) && $(multiapi) +```yaml $(tag) == 'package-2020-05' && $(java) && $(multiapi) java: namespace: com.microsoft.azure.management.billing.v2020_05_01 output-folder: $(azure-libraries-for-java-folder)/sdk/billing/mgmt-v2020_05_01 @@ -232,7 +452,7 @@ generate-interface: true These settings apply only when `--tag=package-2019-10-preview --java` is specified on the command line. Please also specify `--azure-libraries-for-java=`. -``` yaml $(tag) == 'package-2019-10-preview' && $(java) && $(multiapi) +```yaml $(tag) == 'package-2019-10-preview' && $(java) && $(multiapi) java: namespace: com.microsoft.azure.management.billing.v2019_10_01_preview output-folder: $(azure-libraries-for-java-folder)/sdk/billing/mgmt-v2019_10_01_preview @@ -245,7 +465,7 @@ generate-interface: true These settings apply only when `--tag=package-2018-11-preview --java` is specified on the command line. Please also specify `--azure-libraries-for-java=`. -``` yaml $(tag) == 'package-2018-11-preview' && $(java) && $(multiapi) +```yaml $(tag) == 'package-2018-11-preview' && $(java) && $(multiapi) java: namespace: com.microsoft.azure.management.billing.v2018_11_01_preview output-folder: $(azure-libraries-for-java-folder)/sdk/billing/mgmt-v2018_11_01_preview @@ -258,7 +478,7 @@ generate-interface: true These settings apply only when `--tag=package-2018-03-preview --java` is specified on the command line. Please also specify `--azure-libraries-for-java=`. -``` yaml $(tag) == 'package-2018-03-preview' && $(java) && $(multiapi) +```yaml $(tag) == 'package-2018-03-preview' && $(java) && $(multiapi) java: namespace: com.microsoft.azure.management.billing.v2018_03_01_preview output-folder: $(azure-libraries-for-java-folder)/sdk/billing/mgmt-v2018_03_01_preview @@ -271,7 +491,7 @@ generate-interface: true These settings apply only when `--tag=package-2017-04-preview --java` is specified on the command line. Please also specify `--azure-libraries-for-java=`. -``` yaml $(tag) == 'package-2017-04-preview' && $(java) && $(multiapi) +```yaml $(tag) == 'package-2017-04-preview' && $(java) && $(multiapi) java: namespace: com.microsoft.azure.management.billing.v2017_04_24_preview output-folder: $(azure-libraries-for-java-folder)/sdk/billing/mgmt-v2017_04_24_preview @@ -284,14 +504,10 @@ generate-interface: true These settings apply only when `--tag=package-2017-02-preview --java` is specified on the command line. Please also specify `--azure-libraries-for-java=`. -``` yaml $(tag) == 'package-2017-02-preview' && $(java) && $(multiapi) +```yaml $(tag) == 'package-2017-02-preview' && $(java) && $(multiapi) java: namespace: com.microsoft.azure.management.billing.v2017_02_27_preview output-folder: $(azure-libraries-for-java-folder)/sdk/billing/mgmt-v2017_02_27_preview regenerate-manager: true generate-interface: true ``` - - - - diff --git a/specification/billing/resource-manager/sdk-suppressions.yaml b/specification/billing/resource-manager/sdk-suppressions.yaml new file mode 100644 index 000000000000..33533051487f --- /dev/null +++ b/specification/billing/resource-manager/sdk-suppressions.yaml @@ -0,0 +1,703 @@ +suppressions: + azure-sdk-for-go: + - package: sdk/resourcemanager/billing/armbilling + breaking-changes: + - Function `*AccountsClient.BeginUpdate` parameter(s) have been changed from `(context.Context, string, AccountUpdateRequest, *AccountsClientBeginUpdateOptions)` to `(context.Context, string, AccountPatch, *AccountsClientBeginUpdateOptions)` + - Function `*CustomersClient.Get` parameter(s) have been changed from `(context.Context, string, string, *CustomersClientGetOptions)` to `(context.Context, string, string, string, *CustomersClientGetOptions)` + - Function `*EnrollmentAccountsClient.Get` parameter(s) have been changed from `(context.Context, string, *EnrollmentAccountsClientGetOptions)` to `(context.Context, string, string, *EnrollmentAccountsClientGetOptions)` + - Function `*InvoicesClient.Get` parameter(s) have been changed from `(context.Context, string, string, *InvoicesClientGetOptions)` to `(context.Context, string, *InvoicesClientGetOptions)` + - Function `*InvoicesClient.NewListByBillingAccountPager` parameter(s) have been changed from `(string, string, string, *InvoicesClientListByBillingAccountOptions)` to `(string, *InvoicesClientListByBillingAccountOptions)` + - Function `*InvoicesClient.NewListByBillingProfilePager` parameter(s) have been changed from `(string, string, string, string, *InvoicesClientListByBillingProfileOptions)` to `(string, string, *InvoicesClientListByBillingProfileOptions)` + - Function `*InvoicesClient.NewListByBillingSubscriptionPager` parameter(s) have been changed from `(string, string, *InvoicesClientListByBillingSubscriptionOptions)` to `(*InvoicesClientListByBillingSubscriptionOptions)` + - Function `*PermissionsClient.NewListByCustomerPager` parameter(s) have been changed from `(string, string, *PermissionsClientListByCustomerOptions)` to `(string, string, string, *PermissionsClientListByCustomerOptions)` + - Function `*PoliciesClient.GetByCustomer` parameter(s) have been changed from `(context.Context, string, string, *PoliciesClientGetByCustomerOptions)` to `(context.Context, string, string, string, ServiceDefinedResourceName, *PoliciesClientGetByCustomerOptions)` + - Function `*ProductsClient.Update` parameter(s) have been changed from `(context.Context, string, string, Product, *ProductsClientUpdateOptions)` to `(context.Context, string, string, ProductPatch, *ProductsClientUpdateOptions)` + - Function `*SubscriptionsClient.BeginMove` parameter(s) have been changed from `(context.Context, string, TransferBillingSubscriptionRequestProperties, *SubscriptionsClientBeginMoveOptions)` to `(context.Context, string, string, MoveBillingSubscriptionRequest, *SubscriptionsClientBeginMoveOptions)` + - Function `*SubscriptionsClient.Get` parameter(s) have been changed from `(context.Context, string, *SubscriptionsClientGetOptions)` to `(context.Context, string, string, *SubscriptionsClientGetOptions)` + - Function `*SubscriptionsClient.NewListByCustomerPager` parameter(s) have been changed from `(string, string, *SubscriptionsClientListByCustomerOptions)` to `(string, string, string, *SubscriptionsClientListByCustomerOptions)` + - Type of `AccountProperties.EnrollmentDetails` has been changed from `*Enrollment` to `*AccountPropertiesEnrollmentDetails` + - Type of `AccountProperties.SoldTo` has been changed from `*AddressDetails` to `*AccountPropertiesSoldTo` + - Type of `AgreementProperties.BillingProfileInfo` has been changed from `*ProfileInfo` to `[]*ProfileInfo` + - Type of `AgreementProperties.Participants` has been changed from `[]*Participants` to `[]*Participant` + - Type of `AvailableBalanceProperties.Amount` has been changed from `*Amount` to `*AvailableBalancePropertiesAmount` + - Type of `CustomerPolicyProperties.ViewCharges` has been changed from `*ViewCharges` to `*ViewChargesPolicy` + - Type of `EnrollmentAccountListResult.Value` has been changed from `[]*EnrollmentAccountSummary` to `[]*EnrollmentAccount` + - Type of `ErrorResponse.Error` has been changed from `*ErrorDetails` to `*ErrorDetail` + - Type of `InvoiceProperties.AmountDue` has been changed from `*Amount` to `*InvoicePropertiesAmountDue` + - Type of `InvoiceProperties.AzurePrepaymentApplied` has been changed from `*Amount` to `*InvoicePropertiesAzurePrepaymentApplied` + - Type of `InvoiceProperties.BilledAmount` has been changed from `*Amount` to `*InvoicePropertiesBilledAmount` + - Type of `InvoiceProperties.CreditAmount` has been changed from `*Amount` to `*InvoicePropertiesCreditAmount` + - Type of `InvoiceProperties.Documents` has been changed from `[]*Document` to `[]*InvoiceDocument` + - Type of `InvoiceProperties.FreeAzureCreditApplied` has been changed from `*Amount` to `*InvoicePropertiesFreeAzureCreditApplied` + - Type of `InvoiceProperties.Payments` has been changed from `[]*PaymentProperties` to `[]*Payment` + - Type of `InvoiceProperties.RebillDetails` has been changed from `map[string]*RebillDetails` to `*InvoicePropertiesRebillDetails` + - Type of `InvoiceProperties.SubTotal` has been changed from `*Amount` to `*InvoicePropertiesSubTotal` + - Type of `InvoiceProperties.TaxAmount` has been changed from `*Amount` to `*InvoicePropertiesTaxAmount` + - Type of `InvoiceProperties.TotalAmount` has been changed from `*Amount` to `*InvoicePropertiesTotalAmount` + - Type of `InvoiceSectionWithCreateSubPermission.BillingProfileSpendingLimit` has been changed from `*SpendingLimitForBillingProfile` to `*SpendingLimit` + - Type of `InvoiceSectionWithCreateSubPermission.BillingProfileStatusReasonCode` has been changed from `*StatusReasonCodeForBillingProfile` to `*BillingProfileStatusReasonCode` + - Type of `ProductProperties.BillingFrequency` has been changed from `*BillingFrequency` to `*string` + - Type of `ProductProperties.EndDate` has been changed from `*time.Time` to `*string` + - Type of `ProductProperties.LastCharge` has been changed from `*Amount` to `*ProductPropertiesLastCharge` + - Type of `ProductProperties.LastChargeDate` has been changed from `*time.Time` to `*string` + - Type of `ProductProperties.PurchaseDate` has been changed from `*time.Time` to `*string` + - Type of `ProductProperties.Quantity` has been changed from `*float32` to `*int64` + - Type of `ProductProperties.Reseller` has been changed from `*Reseller` to `*ProductPropertiesReseller` + - Type of `ProductProperties.Status` has been changed from `*ProductStatusType` to `*ProductStatus` + - Type of `ProfileProperties.BillTo` has been changed from `*AddressDetails` to `*ProfilePropertiesBillTo` + - Type of `ProfileProperties.IndirectRelationshipInfo` has been changed from `*IndirectRelationshipInfo` to `*ProfilePropertiesIndirectRelationshipInfo` + - Type of `ProfileProperties.StatusReasonCode` has been changed from `*StatusReasonCode` to `*BillingProfileStatusReasonCode` + - Type of `PropertyProperties.BillingProfileSpendingLimit` has been changed from `*BillingProfileSpendingLimit` to `*SpendingLimit` + - Type of `RebillDetails.RebillDetails` has been changed from `map[string]*RebillDetails` to `*RebillDetails` + - Type of `ReservationProperty.EffectiveDateTime` has been changed from `*string` to `*time.Time` + - Type of `RoleAssignmentProperties.CreatedOn` has been changed from `*string` to `*time.Time` + - Type of `RoleDefinitionProperties.Permissions` has been changed from `[]*PermissionsProperties` to `[]*Permission` + - Type of `TransactionProperties.AzureCreditApplied` has been changed from `*Amount` to `*TransactionPropertiesAzureCreditApplied` + - Type of `TransactionProperties.EffectivePrice` has been changed from `*Amount` to `*TransactionPropertiesEffectivePrice` + - Type of `TransactionProperties.Kind` has been changed from `*TransactionTypeKind` to `*TransactionKind` + - Type of `TransactionProperties.MarketPrice` has been changed from `*Amount` to `*TransactionPropertiesMarketPrice` + - Type of `TransactionProperties.SubTotal` has been changed from `*Amount` to `*TransactionPropertiesSubTotal` + - Type of `TransactionProperties.Tax` has been changed from `*Amount` to `*TransactionPropertiesTax` + - Type of `TransactionProperties.TransactionAmount` has been changed from `*Amount` to `*TransactionPropertiesTransactionAmount` + - Type of `TransactionProperties.TransactionType` has been changed from `*ReservationType` to `*string` + - "`InvoiceTypeAzureService` from enum `InvoiceType` has been removed" + - "`SubscriptionTransferValidationErrorCodeNotAvailableForDestinationMarket` from enum `SubscriptionTransferValidationErrorCode` has been removed" + - Enum `BillingFrequency` has been removed + - Enum `BillingProfileSpendingLimit` has been removed + - Enum `BillingSubscriptionStatusType` has been removed + - Enum `DocumentType` has been removed + - Enum `ProductStatusType` has been removed + - Enum `ProductTransferValidationErrorCode` has been removed + - Enum `ReservationType` has been removed + - Enum `SpendingLimitForBillingProfile` has been removed + - Enum `StatusReasonCode` has been removed + - Enum `StatusReasonCodeForBillingProfile` has been removed + - Enum `TransactionTypeKind` has been removed + - Enum `ViewCharges` has been removed + - Function `*AvailableBalancesClient.Get` has been removed + - Function `*ClientFactory.NewInstructionsClient` has been removed + - Function `*ClientFactory.NewPeriodsClient` has been removed + - Function `*ClientFactory.NewRoleDefinitionsClient` has been removed + - Function `*EnrollmentAccountsClient.NewListPager` has been removed + - Function `NewInstructionsClient` has been removed + - Function `*InstructionsClient.Get` has been removed + - Function `*InstructionsClient.NewListByBillingProfilePager` has been removed + - Function `*InstructionsClient.Put` has been removed + - Function `*InvoicesClient.BeginDownloadBillingSubscriptionInvoice` has been removed + - Function `*InvoicesClient.BeginDownloadInvoice` has been removed + - Function `*InvoicesClient.BeginDownloadMultipleBillingProfileInvoices` has been removed + - Function `*InvoicesClient.BeginDownloadMultipleBillingSubscriptionInvoices` has been removed + - Function `*InvoicesClient.GetByID` has been removed + - Function `*InvoicesClient.GetBySubscriptionAndInvoiceID` has been removed + - Function `NewPeriodsClient` has been removed + - Function `*PeriodsClient.Get` has been removed + - Function `*PeriodsClient.NewListPager` has been removed + - Function `*PermissionsClient.NewListByInvoiceSectionsPager` has been removed + - Function `*PoliciesClient.Update` has been removed + - Function `*PoliciesClient.UpdateCustomer` has been removed + - Function `PossibleStatusReasonCodeValues` has been removed + - Function `*ProductsClient.ValidateMove` has been removed + - Function `NewRoleDefinitionsClient` has been removed + - Function `*RoleDefinitionsClient.GetByBillingAccount` has been removed + - Function `*RoleDefinitionsClient.GetByBillingProfile` has been removed + - Function `*RoleDefinitionsClient.GetByInvoiceSection` has been removed + - Function `*RoleDefinitionsClient.NewListByBillingAccountPager` has been removed + - Function `*RoleDefinitionsClient.NewListByBillingProfilePager` has been removed + - Function `*RoleDefinitionsClient.NewListByInvoiceSectionPager` has been removed + - Function `*SubscriptionsClient.ValidateMove` has been removed + - Operation `*ProductsClient.Move` has been changed to LRO, use `*ProductsClient.BeginMove` instead. + - Operation `*SubscriptionsClient.Update` has been changed to LRO, use `*SubscriptionsClient.BeginUpdate` instead. + - Struct `AccountUpdateRequest` has been removed + - Struct `Document` has been removed + - Struct `DownloadURL` has been removed + - Struct `Enrollment` has been removed + - Struct `EnrollmentAccountContext` has been removed + - Struct `EnrollmentAccountSummary` has been removed + - Struct `EnrollmentAccountSummaryProperties` has been removed + - Struct `EnrollmentPolicies` has been removed + - Struct `ErrorDetails` has been removed + - Struct `ErrorSubDetailsItem` has been removed + - Struct `Instruction` has been removed + - Struct `InstructionListResult` has been removed + - Struct `InstructionProperties` has been removed + - Struct `InvoiceSectionCreationRequest` has been removed + - Struct `InvoiceSectionListWithCreateSubPermissionResult` has been removed + - Struct `InvoiceSectionsOnExpand` has been removed + - Struct `OperationsErrorDetails` has been removed + - Struct `OperationsErrorResponse` has been removed + - Struct `Participants` has been removed + - Struct `PaymentProperties` has been removed + - Struct `Period` has been removed + - Struct `PeriodProperties` has been removed + - Struct `PeriodsListResult` has been removed + - Struct `PermissionsListResult` has been removed + - Struct `PermissionsProperties` has been removed + - Struct `Policy` has been removed + - Struct `PolicyProperties` has been removed + - Struct `ProductsListResult` has been removed + - Struct `ProfileCreationRequest` has been removed + - Struct `ProfilesOnExpand` has been removed + - Struct `SubscriptionsListResult` has been removed + - Struct `TransferBillingSubscriptionRequestProperties` has been removed + - Struct `TransferProductRequestProperties` has been removed + - Struct `ValidateAddressResponse` has been removed + - Struct `ValidateProductTransferEligibilityError` has been removed + - Struct `ValidateProductTransferEligibilityResult` has been removed + - Struct `ValidateSubscriptionTransferEligibilityError` has been removed + - Struct `ValidateSubscriptionTransferEligibilityResult` has been removed + - Field `BillingProfiles`, `Departments`, `EnrollmentAccounts` of struct `AccountProperties` has been removed + - Field `Expand` of struct `AccountsClientGetOptions` has been removed + - Field `InvoiceSectionListWithCreateSubPermissionResult` of struct `AccountsClientListInvoiceSectionsByCreateSubscriptionPermissionResponse` has been removed + - Field `ValidateAddressResponse` of struct `AddressClientValidateResponse` has been removed + - Field `Expand` of struct `AgreementsClientGetOptions` has been removed + - Field `TotalCount` of struct `CustomerListResult` has been removed + - Field `Expand` of struct `CustomersClientGetOptions` has been removed + - Field `DepartmentName`, `EnrollmentAccounts` of struct `DepartmentProperties` has been removed + - Field `AccountName`, `AccountOwnerEmail`, `Department` of struct `EnrollmentAccountProperties` has been removed + - Field `EnrollmentAccountSummary` of struct `EnrollmentAccountsClientGetResponse` has been removed + - Field `TotalCount` of struct `InvoiceListResult` has been removed + - Field `TotalCount` of struct `InvoiceSectionListResult` has been removed + - Field `Labels` of struct `InvoiceSectionProperties` has been removed + - Field `PermissionsListResult` of struct `PermissionsClientListByBillingAccountResponse` has been removed + - Field `PermissionsListResult` of struct `PermissionsClientListByBillingProfileResponse` has been removed + - Field `PermissionsListResult` of struct `PermissionsClientListByCustomerResponse` has been removed + - Field `Policy` of struct `PoliciesClientGetByBillingProfileResponse` has been removed + - Field `ProductsListResult` of struct `ProductsClientListByBillingAccountResponse` has been removed + - Field `ProductsListResult` of struct `ProductsClientListByBillingProfileResponse` has been removed + - Field `ProductsListResult` of struct `ProductsClientListByCustomerResponse` has been removed + - Field `ProductsListResult` of struct `ProductsClientListByInvoiceSectionResponse` has been removed + - Field `TotalCount` of struct `ProfileListResult` has been removed + - Field `InvoiceSections` of struct `ProfileProperties` has been removed + - Field `Expand` of struct `ProfilesClientGetOptions` has been removed + - Field `Expand` of struct `ProfilesClientListByBillingAccountOptions` has been removed + - Field `Orderby` of struct `ReservationsClientListByBillingAccountOptions` has been removed + - Field `Orderby` of struct `ReservationsClientListByBillingProfileOptions` has been removed + - Field `RoleAssignment` of struct `RoleAssignmentsClientDeleteByBillingAccountResponse` has been removed + - Field `RoleAssignment` of struct `RoleAssignmentsClientDeleteByBillingProfileResponse` has been removed + - Field `RoleAssignment` of struct `RoleAssignmentsClientDeleteByInvoiceSectionResponse` has been removed + - Field `CostCenter`, `SubscriptionBillingStatus` of struct `SubscriptionProperties` has been removed + - Field `SubscriptionsListResult` of struct `SubscriptionsClientListByBillingAccountResponse` has been removed + - Field `SubscriptionsListResult` of struct `SubscriptionsClientListByBillingProfileResponse` has been removed + - Field `SubscriptionsListResult` of struct `SubscriptionsClientListByCustomerResponse` has been removed + - Field `SubscriptionsListResult` of struct `SubscriptionsClientListByInvoiceSectionResponse` has been removed + - Field `TotalCount` of struct `TransactionListResult` has been removed + - Field `OrderID`, `OrderName`, `SubscriptionID`, `SubscriptionName` of struct `TransactionProperties` has been removed + + ### Features Added + + - Type of `TransactionProperties.BillingProfileDisplayName` has been changed from `*string` to `any` + - New value `AcceptanceModeImplicit`, `AcceptanceModeOffline`, `AcceptanceModeOther`, `AcceptanceModePhysicalSign` added to enum type `AcceptanceMode` + - New value `AccountStatusNew`, `AccountStatusOther`, `AccountStatusPending`, `AccountStatusUnderReview` added to enum type `AccountStatus` + - New value `AccountTypeBusiness`, `AccountTypeClassicPartner`, `AccountTypeInternal`, `AccountTypeOther`, `AccountTypeReseller`, `AccountTypeTenant` added to enum type `AccountType` + - New value `AddressValidationStatusOther` added to enum type `AddressValidationStatus` + - New value `AgreementTypeOther` added to enum type `AgreementType` + - New value `BillingProfileStatusDeleted`, `BillingProfileStatusOther`, `BillingProfileStatusUnderReview` added to enum type `BillingProfileStatus` + - New value `BillingProfileStatusReasonCodeOther`, `BillingProfileStatusReasonCodeUnusualActivity` added to enum type `BillingProfileStatusReasonCode` + - New value `BillingRelationshipTypeCSPCustomer`, `BillingRelationshipTypeOther` added to enum type `BillingRelationshipType` + - New value `CategoryIndirectForGovernmentAgreement`, `CategoryMicrosoftPartnerAgreement`, `CategoryUKCloudComputeFramework` added to enum type `Category` + - New value `DocumentSourceOther` added to enum type `DocumentSource` + - New value `InvoiceDocumentTypeOther`, `InvoiceDocumentTypeSummary`, `InvoiceDocumentTypeTaxReceipt`, `InvoiceDocumentTypeTransactions`, `InvoiceDocumentTypeVoidNote` added to enum type `InvoiceDocumentType` + - New value `InvoiceSectionStateDeleted`, `InvoiceSectionStateDisabled`, `InvoiceSectionStateOther`, `InvoiceSectionStateUnderReview`, `InvoiceSectionStateWarned` added to enum type `InvoiceSectionState` + - New value `InvoiceStatusLocked`, `InvoiceStatusOther` added to enum type `InvoiceStatus` + - New value `InvoiceTypeAzureServices`, `InvoiceTypeOther` added to enum type `InvoiceType` + - New value `MarketplacePurchasesPolicyDisabled`, `MarketplacePurchasesPolicyOther` added to enum type `MarketplacePurchasesPolicy` + - New value `PaymentMethodFamilyDirectDebit`, `PaymentMethodFamilyEWallet`, `PaymentMethodFamilyOther`, `PaymentMethodFamilyTaskOrder` added to enum type `PaymentMethodFamily` + - New value `ReservationPurchasesPolicyDisabled`, `ReservationPurchasesPolicyOther` added to enum type `ReservationPurchasesPolicy` + - New value `SubscriptionTransferValidationErrorCodeAccountIsLocked`, `SubscriptionTransferValidationErrorCodeAssetHasCap`, `SubscriptionTransferValidationErrorCodeAssetNotActive`, `SubscriptionTransferValidationErrorCodeBillingProfilePastDue`, `SubscriptionTransferValidationErrorCodeInvoiceSectionIsRestricted`, `SubscriptionTransferValidationErrorCodeNoActiveAzurePlan`, `SubscriptionTransferValidationErrorCodeNone`, `SubscriptionTransferValidationErrorCodeOther`, `SubscriptionTransferValidationErrorCodeSubscriptionHasReservations` added to enum type `SubscriptionTransferValidationErrorCode` + - New value `TargetCloudInternal`, `TargetCloudOther` added to enum type `TargetCloud` + - New value `ViewChargesPolicyOther` added to enum type `ViewChargesPolicy` + - New enum type `AccessDecision` with values `AccessDecisionAllowed`, `AccessDecisionNotAllowed`, `AccessDecisionOther` + - New enum type `AccountSubType` with values `AccountSubTypeEnterprise`, `AccountSubTypeIndividual`, `AccountSubTypeNone`, `AccountSubTypeOther`, `AccountSubTypeProfessional` + - New enum type `AppliedScopeType` with values `AppliedScopeTypeManagementGroup`, `AppliedScopeTypeShared`, `AppliedScopeTypeSingle` + - New enum type `BillingAccountStatusReasonCode` with values `BillingAccountStatusReasonCodeExpired`, `BillingAccountStatusReasonCodeManuallyTerminated`, `BillingAccountStatusReasonCodeOther`, `BillingAccountStatusReasonCodeTerminateProcessing`, `BillingAccountStatusReasonCodeTransferred`, `BillingAccountStatusReasonCodeUnusualActivity` + - New enum type `BillingManagementTenantState` with values `BillingManagementTenantStateActive`, `BillingManagementTenantStateNotAllowed`, `BillingManagementTenantStateOther`, `BillingManagementTenantStateRevoked` + - New enum type `BillingPlan` with values `BillingPlanP1M` + - New enum type `BillingRequestStatus` with values `BillingRequestStatusApproved`, `BillingRequestStatusCancelled`, `BillingRequestStatusCompleted`, `BillingRequestStatusDeclined`, `BillingRequestStatusExpired`, `BillingRequestStatusOther`, `BillingRequestStatusPending` + - New enum type `BillingRequestType` with values `BillingRequestTypeInvoiceAccess`, `BillingRequestTypeOther`, `BillingRequestTypeProvisioningAccess`, `BillingRequestTypeRoleAssignment`, `BillingRequestTypeUpdateBillingPolicy` + - New enum type `BillingSubscriptionOperationStatus` with values `BillingSubscriptionOperationStatusLockedForUpdate`, `BillingSubscriptionOperationStatusNone`, `BillingSubscriptionOperationStatusOther` + - New enum type `BillingSubscriptionStatus` with values `BillingSubscriptionStatusActive`, `BillingSubscriptionStatusAutoRenew`, `BillingSubscriptionStatusCancelled`, `BillingSubscriptionStatusDeleted`, `BillingSubscriptionStatusDisabled`, `BillingSubscriptionStatusExpired`, `BillingSubscriptionStatusExpiring`, `BillingSubscriptionStatusFailed`, `BillingSubscriptionStatusOther`, `BillingSubscriptionStatusSuspended`, `BillingSubscriptionStatusUnknown`, `BillingSubscriptionStatusWarned` + - New enum type `Cancellation` with values `CancellationAllowed`, `CancellationNotAllowed` + - New enum type `CancellationReason` with values `CancellationReasonCompromise`, `CancellationReasonDispute`, `CancellationReasonOther` + - New enum type `CommitmentGrain` with values `CommitmentGrainHourly` + - New enum type `CreatedByType` with values `CreatedByTypeApplication`, `CreatedByTypeKey`, `CreatedByTypeManagedIdentity`, `CreatedByTypeUser` + - New enum type `CreditType` with values `CreditTypeAzureCreditOffer`, `CreditTypeAzureFreeCredit`, `CreditTypeOther`, `CreditTypeRefund`, `CreditTypeServiceInterruption` + - New enum type `CustomerStatus` with values `CustomerStatusActive`, `CustomerStatusDeleted`, `CustomerStatusDisabled`, `CustomerStatusOther`, `CustomerStatusPending`, `CustomerStatusUnderReview`, `CustomerStatusWarned` + - New enum type `DeleteBillingProfileEligibilityCode` with values `DeleteBillingProfileEligibilityCodeActiveBillingSubscriptions`, `DeleteBillingProfileEligibilityCodeActiveCreditCard`, `DeleteBillingProfileEligibilityCodeActiveCredits`, `DeleteBillingProfileEligibilityCodeLastBillingProfile`, `DeleteBillingProfileEligibilityCodeNone`, `DeleteBillingProfileEligibilityCodeNotSupported`, `DeleteBillingProfileEligibilityCodeOutstandingCharges`, `DeleteBillingProfileEligibilityCodePendingCharges`, `DeleteBillingProfileEligibilityCodeReservedInstances` + - New enum type `DeleteBillingProfileEligibilityStatus` with values `DeleteBillingProfileEligibilityStatusAllowed`, `DeleteBillingProfileEligibilityStatusNotAllowed` + - New enum type `DeleteInvoiceSectionEligibilityCode` with values `DeleteInvoiceSectionEligibilityCodeActiveAzurePlans`, `DeleteInvoiceSectionEligibilityCodeActiveBillingSubscriptions`, `DeleteInvoiceSectionEligibilityCodeLastInvoiceSection`, `DeleteInvoiceSectionEligibilityCodeOther`, `DeleteInvoiceSectionEligibilityCodeReservedInstances` + - New enum type `DeleteInvoiceSectionEligibilityStatus` with values `DeleteInvoiceSectionEligibilityStatusAllowed`, `DeleteInvoiceSectionEligibilityStatusNotAllowed` + - New enum type `EligibleProductType` with values `EligibleProductTypeAzureReservation`, `EligibleProductTypeDevTestAzureSubscription`, `EligibleProductTypeStandardAzureSubscription` + - New enum type `EnrollmentAccountOwnerViewCharges` with values `EnrollmentAccountOwnerViewChargesAllowed`, `EnrollmentAccountOwnerViewChargesDisabled`, `EnrollmentAccountOwnerViewChargesNotAllowed`, `EnrollmentAccountOwnerViewChargesOther` + - New enum type `EnrollmentAuthLevelState` with values `EnrollmentAuthLevelStateMicrosoftAccountOnly`, `EnrollmentAuthLevelStateMixedAccount`, `EnrollmentAuthLevelStateOrganizationalAccountCrossTenant`, `EnrollmentAuthLevelStateOrganizationalAccountOnly`, `EnrollmentAuthLevelStateOther` + - New enum type `EnrollmentDepartmentAdminViewCharges` with values `EnrollmentDepartmentAdminViewChargesAllowed`, `EnrollmentDepartmentAdminViewChargesDisabled`, `EnrollmentDepartmentAdminViewChargesNotAllowed`, `EnrollmentDepartmentAdminViewChargesOther` + - New enum type `ExtendedTermOption` with values `ExtendedTermOptionOptedIn`, `ExtendedTermOptionOptedOut`, `ExtendedTermOptionOther` + - New enum type `FailedPaymentReason` with values `FailedPaymentReasonBankDeclined`, `FailedPaymentReasonCardExpired`, `FailedPaymentReasonIncorrectCardDetails`, `FailedPaymentReasonOther` + - New enum type `InitiatorCustomerType` with values `InitiatorCustomerTypeEA`, `InitiatorCustomerTypePartner` + - New enum type `InstanceFlexibility` with values `InstanceFlexibilityOff`, `InstanceFlexibilityOn` + - New enum type `InvoiceSectionLabelManagementPolicy` with values `InvoiceSectionLabelManagementPolicyAllowed`, `InvoiceSectionLabelManagementPolicyNotAllowed`, `InvoiceSectionLabelManagementPolicyOther` + - New enum type `InvoiceSectionStateReasonCode` with values `InvoiceSectionStateReasonCodeOther`, `InvoiceSectionStateReasonCodePastDue`, `InvoiceSectionStateReasonCodeSpendingLimitExpired`, `InvoiceSectionStateReasonCodeSpendingLimitReached`, `InvoiceSectionStateReasonCodeUnusualActivity` + - New enum type `MarkupStatus` with values `MarkupStatusDisabled`, `MarkupStatusLocked`, `MarkupStatusOther`, `MarkupStatusPreview`, `MarkupStatusPublished` + - New enum type `MoveValidationErrorCode` with values `MoveValidationErrorCodeBillingAccountInactive`, `MoveValidationErrorCodeDestinationBillingProfileInactive`, `MoveValidationErrorCodeDestinationBillingProfileNotFound`, `MoveValidationErrorCodeDestinationBillingProfilePastDue`, `MoveValidationErrorCodeDestinationInvoiceSectionInactive`, `MoveValidationErrorCodeDestinationInvoiceSectionNotFound`, `MoveValidationErrorCodeInsufficientPermissionOnDestination`, `MoveValidationErrorCodeInsufficientPermissionOnSource`, `MoveValidationErrorCodeInvalidDestination`, `MoveValidationErrorCodeInvalidSource`, `MoveValidationErrorCodeMarketplaceNotEnabledOnDestination`, `MoveValidationErrorCodeOther`, `MoveValidationErrorCodeProductInactive`, `MoveValidationErrorCodeProductNotFound`, `MoveValidationErrorCodeProductTypeNotSupported`, `MoveValidationErrorCodeSourceBillingProfilePastDue`, `MoveValidationErrorCodeSourceInvoiceSectionInactive` + - New enum type `PaymentMethodStatus` with values `PaymentMethodStatusActive`, `PaymentMethodStatusInactive` + - New enum type `PaymentStatus` with values `PaymentStatusCancelled`, `PaymentStatusCompleted`, `PaymentStatusFailed`, `PaymentStatusPending`, `PaymentStatusScheduled`, `PaymentStatusSucceeded` + - New enum type `PaymentTermsEligibilityCode` with values `PaymentTermsEligibilityCodeBillingAccountNotFound`, `PaymentTermsEligibilityCodeInactiveBillingAccount`, `PaymentTermsEligibilityCodeIneligibleBillingAccountStatus`, `PaymentTermsEligibilityCodeInvalidBillingAccountType`, `PaymentTermsEligibilityCodeInvalidDateFormat`, `PaymentTermsEligibilityCodeInvalidDateRange`, `PaymentTermsEligibilityCodeInvalidTerms`, `PaymentTermsEligibilityCodeNullOrEmptyPaymentTerms`, `PaymentTermsEligibilityCodeOther`, `PaymentTermsEligibilityCodeOverlappingPaymentTerms` + - New enum type `PaymentTermsEligibilityStatus` with values `PaymentTermsEligibilityStatusInvalid`, `PaymentTermsEligibilityStatusOther`, `PaymentTermsEligibilityStatusValid` + - New enum type `PolicyType` with values `PolicyTypeOther`, `PolicyTypeSystemControlled`, `PolicyTypeUserControlled` + - New enum type `PrincipalType` with values `PrincipalTypeDirectoryRole`, `PrincipalTypeEveryone`, `PrincipalTypeGroup`, `PrincipalTypeNone`, `PrincipalTypeServicePrincipal`, `PrincipalTypeUnknown`, `PrincipalTypeUser` + - New enum type `ProductStatus` with values `ProductStatusActive`, `ProductStatusAutoRenew`, `ProductStatusCanceled`, `ProductStatusDeleted`, `ProductStatusDisabled`, `ProductStatusExpired`, `ProductStatusExpiring`, `ProductStatusOther`, `ProductStatusPastDue`, `ProductStatusSuspended` + - New enum type `ProductTransferStatus` with values `ProductTransferStatusCompleted`, `ProductTransferStatusFailed`, `ProductTransferStatusInProgress`, `ProductTransferStatusNotStarted` + - New enum type `ProductType` with values `ProductTypeAzureReservation`, `ProductTypeAzureSubscription`, `ProductTypeDepartment`, `ProductTypeSAAS`, `ProductTypeSavingsPlan` + - New enum type `ProvisioningState` with values `ProvisioningStateCanceled`, `ProvisioningStateConfirmedBilling`, `ProvisioningStateCreated`, `ProvisioningStateCreating`, `ProvisioningStateExpired`, `ProvisioningStateFailed`, `ProvisioningStateNew`, `ProvisioningStatePending`, `ProvisioningStatePendingBilling`, `ProvisioningStateProvisioning`, `ProvisioningStateSucceeded` + - New enum type `ProvisioningTenantState` with values `ProvisioningTenantStateActive`, `ProvisioningTenantStateBillingRequestDeclined`, `ProvisioningTenantStateBillingRequestExpired`, `ProvisioningTenantStateNotRequested`, `ProvisioningTenantStateOther`, `ProvisioningTenantStatePending`, `ProvisioningTenantStateRevoked` + - New enum type `RefundReasonCode` with values `RefundReasonCodeAccidentalConversion`, `RefundReasonCodeAccidentalPurchase`, `RefundReasonCodeForgotToCancel`, `RefundReasonCodeOther`, `RefundReasonCodeUnclearDocumentation`, `RefundReasonCodeUnclearPricing` + - New enum type `RefundStatus` with values `RefundStatusApproved`, `RefundStatusCancelled`, `RefundStatusCompleted`, `RefundStatusDeclined`, `RefundStatusExpired`, `RefundStatusOther`, `RefundStatusPending` + - New enum type `ReservationBillingPlan` with values `ReservationBillingPlanMonthly`, `ReservationBillingPlanUpfront` + - New enum type `ReservationStatusCode` with values `ReservationStatusCodeActive`, `ReservationStatusCodeCapacityError`, `ReservationStatusCodeCapacityRestricted`, `ReservationStatusCodeCreditLineCheckFailed`, `ReservationStatusCodeExchanged`, `ReservationStatusCodeExpired`, `ReservationStatusCodeMerged`, `ReservationStatusCodeNoBenefit`, `ReservationStatusCodeNoBenefitDueToSubscriptionDeletion`, `ReservationStatusCodeNoBenefitDueToSubscriptionTransfer`, `ReservationStatusCodeNone`, `ReservationStatusCodePaymentInstrumentError`, `ReservationStatusCodePending`, `ReservationStatusCodeProcessing`, `ReservationStatusCodePurchaseError`, `ReservationStatusCodeRiskCheckFailed`, `ReservationStatusCodeSplit`, `ReservationStatusCodeSucceeded`, `ReservationStatusCodeUnknownError`, `ReservationStatusCodeWarning` + - New enum type `SavingsPlanPurchasesPolicy` with values `SavingsPlanPurchasesPolicyAllowed`, `SavingsPlanPurchasesPolicyDisabled`, `SavingsPlanPurchasesPolicyNotAllowed`, `SavingsPlanPurchasesPolicyOther` + - New enum type `SavingsPlanTerm` with values `SavingsPlanTermP1Y`, `SavingsPlanTermP3Y`, `SavingsPlanTermP5Y` + - New enum type `ServiceDefinedResourceName` with values `ServiceDefinedResourceNameDefault` + - New enum type `SpecialTaxationType` with values `SpecialTaxationTypeInvoiceLevel`, `SpecialTaxationTypeSubtotalLevel` + - New enum type `SpendingLimitStatus` with values `SpendingLimitStatusActive`, `SpendingLimitStatusExpired`, `SpendingLimitStatusLimitReached`, `SpendingLimitStatusLimitRemoved`, `SpendingLimitStatusNone`, `SpendingLimitStatusOther` + - New enum type `SpendingLimitType` with values `SpendingLimitTypeAcademicSponsorship`, `SpendingLimitTypeAzureConsumptionCredit`, `SpendingLimitTypeAzureForStudents`, `SpendingLimitTypeAzureForStudentsStarter`, `SpendingLimitTypeAzurePassSponsorship`, `SpendingLimitTypeFreeAccount`, `SpendingLimitTypeMSDN`, `SpendingLimitTypeMpnSponsorship`, `SpendingLimitTypeNonProfitSponsorship`, `SpendingLimitTypeNone`, `SpendingLimitTypeOther`, `SpendingLimitTypeSandbox`, `SpendingLimitTypeSponsorship`, `SpendingLimitTypeStartupSponsorship`, `SpendingLimitTypeVisualStudio` + - New enum type `SubscriptionBillingType` with values `SubscriptionBillingTypeBenefit`, `SubscriptionBillingTypeFree`, `SubscriptionBillingTypeNone`, `SubscriptionBillingTypePaid`, `SubscriptionBillingTypePrePaid` + - New enum type `SubscriptionEnrollmentAccountStatus` with values `SubscriptionEnrollmentAccountStatusActive`, `SubscriptionEnrollmentAccountStatusCancelled`, `SubscriptionEnrollmentAccountStatusDeleted`, `SubscriptionEnrollmentAccountStatusExpired`, `SubscriptionEnrollmentAccountStatusInactive`, `SubscriptionEnrollmentAccountStatusTransferredOut`, `SubscriptionEnrollmentAccountStatusTransferring` + - New enum type `SubscriptionStatusReason` with values `SubscriptionStatusReasonCancelled`, `SubscriptionStatusReasonExpired`, `SubscriptionStatusReasonNone`, `SubscriptionStatusReasonOther`, `SubscriptionStatusReasonPastDue`, `SubscriptionStatusReasonPolicyViolation`, `SubscriptionStatusReasonSpendingLimitReached`, `SubscriptionStatusReasonSuspiciousActivity`, `SubscriptionStatusReasonTransferred` + - New enum type `SubscriptionWorkloadType` with values `SubscriptionWorkloadTypeDevTest`, `SubscriptionWorkloadTypeInternal`, `SubscriptionWorkloadTypeNone`, `SubscriptionWorkloadTypeProduction` + - New enum type `SupportLevel` with values `SupportLevelDeveloper`, `SupportLevelOther`, `SupportLevelProDirect`, `SupportLevelStandard` + - New enum type `SupportedAccountType` with values `SupportedAccountTypeEnterprise`, `SupportedAccountTypeIndividual`, `SupportedAccountTypeNone`, `SupportedAccountTypePartner` + - New enum type `TaxIdentifierStatus` with values `TaxIdentifierStatusInvalid`, `TaxIdentifierStatusOther`, `TaxIdentifierStatusValid` + - New enum type `TaxIdentifierType` with values `TaxIdentifierTypeBrazilCcmID`, `TaxIdentifierTypeBrazilCnpjID`, `TaxIdentifierTypeBrazilCpfID`, `TaxIdentifierTypeCanadianFederalExempt`, `TaxIdentifierTypeCanadianProvinceExempt`, `TaxIdentifierTypeExternalTaxation`, `TaxIdentifierTypeIndiaFederalServiceTaxID`, `TaxIdentifierTypeIndiaFederalTanID`, `TaxIdentifierTypeIndiaPanID`, `TaxIdentifierTypeIndiaStateCstID`, `TaxIdentifierTypeIndiaStateGstINID`, `TaxIdentifierTypeIndiaStateVatID`, `TaxIdentifierTypeIntlExempt`, `TaxIdentifierTypeLoveCode`, `TaxIdentifierTypeMobileBarCode`, `TaxIdentifierTypeNationalIdentificationNumber`, `TaxIdentifierTypeOther`, `TaxIdentifierTypePublicSectorID`, `TaxIdentifierTypeUSExempt`, `TaxIdentifierTypeVatID` + - New enum type `TransactionKind` with values `TransactionKindAll`, `TransactionKindOther`, `TransactionKindReservation` + - New enum type `TransactionType` with values `TransactionTypeBilled`, `TransactionTypeOther`, `TransactionTypeUnbilled` + - New enum type `TransferStatus` with values `TransferStatusCanceled`, `TransferStatusCompleted`, `TransferStatusCompletedWithErrors`, `TransferStatusDeclined`, `TransferStatusExpired`, `TransferStatusFailed`, `TransferStatusInProgress`, `TransferStatusPending` + - New function `*AccountsClient.BeginAddPaymentTerms(context.Context, string, []*PaymentTerm, *AccountsClientBeginAddPaymentTermsOptions) (*runtime.Poller[AccountsClientAddPaymentTermsResponse], error)` + - New function `*AccountsClient.BeginCancelPaymentTerms(context.Context, string, time.Time, *AccountsClientBeginCancelPaymentTermsOptions) (*runtime.Poller[AccountsClientCancelPaymentTermsResponse], error)` + - New function `*AccountsClient.ConfirmTransition(context.Context, string, *AccountsClientConfirmTransitionOptions) (AccountsClientConfirmTransitionResponse, error)` + - New function `*AccountsClient.ValidatePaymentTerms(context.Context, string, []*PaymentTerm, *AccountsClientValidatePaymentTermsOptions) (AccountsClientValidatePaymentTermsResponse, error)` + - New function `NewAssociatedTenantsClient(azcore.TokenCredential, *arm.ClientOptions) (*AssociatedTenantsClient, error)` + - New function `*AssociatedTenantsClient.BeginCreateOrUpdate(context.Context, string, string, AssociatedTenant, *AssociatedTenantsClientBeginCreateOrUpdateOptions) (*runtime.Poller[AssociatedTenantsClientCreateOrUpdateResponse], error)` + - New function `*AssociatedTenantsClient.BeginDelete(context.Context, string, string, *AssociatedTenantsClientBeginDeleteOptions) (*runtime.Poller[AssociatedTenantsClientDeleteResponse], error)` + - New function `*AssociatedTenantsClient.Get(context.Context, string, string, *AssociatedTenantsClientGetOptions) (AssociatedTenantsClientGetResponse, error)` + - New function `*AssociatedTenantsClient.NewListByBillingAccountPager(string, *AssociatedTenantsClientListByBillingAccountOptions) *runtime.Pager[AssociatedTenantsClientListByBillingAccountResponse]` + - New function `*AvailableBalancesClient.GetByBillingAccount(context.Context, string, *AvailableBalancesClientGetByBillingAccountOptions) (AvailableBalancesClientGetByBillingAccountResponse, error)` + - New function `*AvailableBalancesClient.GetByBillingProfile(context.Context, string, string, *AvailableBalancesClientGetByBillingProfileOptions) (AvailableBalancesClientGetByBillingProfileResponse, error)` + - New function `*ClientFactory.NewAssociatedTenantsClient() *AssociatedTenantsClient` + - New function `*ClientFactory.NewDepartmentsClient() *DepartmentsClient` + - New function `*ClientFactory.NewPartnerTransfersClient() *PartnerTransfersClient` + - New function `*ClientFactory.NewPaymentMethodsClient() *PaymentMethodsClient` + - New function `*ClientFactory.NewRecipientTransfersClient() *RecipientTransfersClient` + - New function `*ClientFactory.NewRequestsClient() *RequestsClient` + - New function `*ClientFactory.NewReservationOrdersClient() *ReservationOrdersClient` + - New function `*ClientFactory.NewRoleDefinitionClient() *RoleDefinitionClient` + - New function `*ClientFactory.NewSavingsPlanOrdersClient() *SavingsPlanOrdersClient` + - New function `*ClientFactory.NewSavingsPlansClient() *SavingsPlansClient` + - New function `*ClientFactory.NewSubscriptionsAliasesClient() *SubscriptionsAliasesClient` + - New function `*ClientFactory.NewTransfersClient() *TransfersClient` + - New function `*CustomersClient.GetByBillingAccount(context.Context, string, string, *CustomersClientGetByBillingAccountOptions) (CustomersClientGetByBillingAccountResponse, error)` + - New function `NewDepartmentsClient(azcore.TokenCredential, *arm.ClientOptions) (*DepartmentsClient, error)` + - New function `*DepartmentsClient.Get(context.Context, string, string, *DepartmentsClientGetOptions) (DepartmentsClientGetResponse, error)` + - New function `*DepartmentsClient.NewListByBillingAccountPager(string, *DepartmentsClientListByBillingAccountOptions) *runtime.Pager[DepartmentsClientListByBillingAccountResponse]` + - New function `*EnrollmentAccountsClient.GetByDepartment(context.Context, string, string, string, *EnrollmentAccountsClientGetByDepartmentOptions) (EnrollmentAccountsClientGetByDepartmentResponse, error)` + - New function `*EnrollmentAccountsClient.NewListByBillingAccountPager(string, *EnrollmentAccountsClientListByBillingAccountOptions) *runtime.Pager[EnrollmentAccountsClientListByBillingAccountResponse]` + - New function `*EnrollmentAccountsClient.NewListByDepartmentPager(string, string, *EnrollmentAccountsClientListByDepartmentOptions) *runtime.Pager[EnrollmentAccountsClientListByDepartmentResponse]` + - New function `*InvoiceSectionsClient.BeginDelete(context.Context, string, string, string, *InvoiceSectionsClientBeginDeleteOptions) (*runtime.Poller[InvoiceSectionsClientDeleteResponse], error)` + - New function `*InvoiceSectionsClient.ValidateDeleteEligibility(context.Context, string, string, string, *InvoiceSectionsClientValidateDeleteEligibilityOptions) (InvoiceSectionsClientValidateDeleteEligibilityResponse, error)` + - New function `*InvoicesClient.BeginAmend(context.Context, string, string, *InvoicesClientBeginAmendOptions) (*runtime.Poller[InvoicesClientAmendResponse], error)` + - New function `*InvoicesClient.BeginDownloadByBillingAccount(context.Context, string, string, *InvoicesClientBeginDownloadByBillingAccountOptions) (*runtime.Poller[InvoicesClientDownloadByBillingAccountResponse], error)` + - New function `*InvoicesClient.BeginDownloadByBillingSubscription(context.Context, string, *InvoicesClientBeginDownloadByBillingSubscriptionOptions) (*runtime.Poller[InvoicesClientDownloadByBillingSubscriptionResponse], error)` + - New function `*InvoicesClient.BeginDownloadDocumentsByBillingAccount(context.Context, string, []*DocumentDownloadRequest, *InvoicesClientBeginDownloadDocumentsByBillingAccountOptions) (*runtime.Poller[InvoicesClientDownloadDocumentsByBillingAccountResponse], error)` + - New function `*InvoicesClient.BeginDownloadDocumentsByBillingSubscription(context.Context, []*DocumentDownloadRequest, *InvoicesClientBeginDownloadDocumentsByBillingSubscriptionOptions) (*runtime.Poller[InvoicesClientDownloadDocumentsByBillingSubscriptionResponse], error)` + - New function `*InvoicesClient.BeginDownloadSummaryByBillingAccount(context.Context, string, string, *InvoicesClientBeginDownloadSummaryByBillingAccountOptions) (*runtime.Poller[InvoicesClientDownloadSummaryByBillingAccountResponse], error)` + - New function `*InvoicesClient.GetByBillingAccount(context.Context, string, string, *InvoicesClientGetByBillingAccountOptions) (InvoicesClientGetByBillingAccountResponse, error)` + - New function `*InvoicesClient.GetByBillingSubscription(context.Context, string, *InvoicesClientGetByBillingSubscriptionOptions) (InvoicesClientGetByBillingSubscriptionResponse, error)` + - New function `NewPartnerTransfersClient(azcore.TokenCredential, *arm.ClientOptions) (*PartnerTransfersClient, error)` + - New function `*PartnerTransfersClient.Cancel(context.Context, string, string, string, string, *PartnerTransfersClientCancelOptions) (PartnerTransfersClientCancelResponse, error)` + - New function `*PartnerTransfersClient.Get(context.Context, string, string, string, string, *PartnerTransfersClientGetOptions) (PartnerTransfersClientGetResponse, error)` + - New function `*PartnerTransfersClient.Initiate(context.Context, string, string, string, string, PartnerInitiateTransferRequest, *PartnerTransfersClientInitiateOptions) (PartnerTransfersClientInitiateResponse, error)` + - New function `*PartnerTransfersClient.NewListPager(string, string, string, *PartnerTransfersClientListOptions) *runtime.Pager[PartnerTransfersClientListResponse]` + - New function `NewPaymentMethodsClient(azcore.TokenCredential, *arm.ClientOptions) (*PaymentMethodsClient, error)` + - New function `*PaymentMethodsClient.BeginDeleteAtBillingProfile(context.Context, string, string, string, *PaymentMethodsClientBeginDeleteAtBillingProfileOptions) (*runtime.Poller[PaymentMethodsClientDeleteAtBillingProfileResponse], error)` + - New function `*PaymentMethodsClient.DeleteByUser(context.Context, string, *PaymentMethodsClientDeleteByUserOptions) (PaymentMethodsClientDeleteByUserResponse, error)` + - New function `*PaymentMethodsClient.GetByBillingAccount(context.Context, string, string, *PaymentMethodsClientGetByBillingAccountOptions) (PaymentMethodsClientGetByBillingAccountResponse, error)` + - New function `*PaymentMethodsClient.GetByBillingProfile(context.Context, string, string, string, *PaymentMethodsClientGetByBillingProfileOptions) (PaymentMethodsClientGetByBillingProfileResponse, error)` + - New function `*PaymentMethodsClient.GetByUser(context.Context, string, *PaymentMethodsClientGetByUserOptions) (PaymentMethodsClientGetByUserResponse, error)` + - New function `*PaymentMethodsClient.NewListByBillingAccountPager(string, *PaymentMethodsClientListByBillingAccountOptions) *runtime.Pager[PaymentMethodsClientListByBillingAccountResponse]` + - New function `*PaymentMethodsClient.NewListByBillingProfilePager(string, string, *PaymentMethodsClientListByBillingProfileOptions) *runtime.Pager[PaymentMethodsClientListByBillingProfileResponse]` + - New function `*PaymentMethodsClient.NewListByUserPager(*PaymentMethodsClientListByUserOptions) *runtime.Pager[PaymentMethodsClientListByUserResponse]` + - New function `*PermissionsClient.CheckAccessByBillingAccount(context.Context, string, CheckAccessRequest, *PermissionsClientCheckAccessByBillingAccountOptions) (PermissionsClientCheckAccessByBillingAccountResponse, error)` + - New function `*PermissionsClient.CheckAccessByBillingProfile(context.Context, string, string, CheckAccessRequest, *PermissionsClientCheckAccessByBillingProfileOptions) (PermissionsClientCheckAccessByBillingProfileResponse, error)` + - New function `*PermissionsClient.CheckAccessByCustomer(context.Context, string, string, string, CheckAccessRequest, *PermissionsClientCheckAccessByCustomerOptions) (PermissionsClientCheckAccessByCustomerResponse, error)` + - New function `*PermissionsClient.CheckAccessByDepartment(context.Context, string, string, CheckAccessRequest, *PermissionsClientCheckAccessByDepartmentOptions) (PermissionsClientCheckAccessByDepartmentResponse, error)` + - New function `*PermissionsClient.CheckAccessByEnrollmentAccount(context.Context, string, string, CheckAccessRequest, *PermissionsClientCheckAccessByEnrollmentAccountOptions) (PermissionsClientCheckAccessByEnrollmentAccountResponse, error)` + - New function `*PermissionsClient.CheckAccessByInvoiceSection(context.Context, string, string, string, CheckAccessRequest, *PermissionsClientCheckAccessByInvoiceSectionOptions) (PermissionsClientCheckAccessByInvoiceSectionResponse, error)` + - New function `*PermissionsClient.NewListByCustomerAtBillingAccountPager(string, string, *PermissionsClientListByCustomerAtBillingAccountOptions) *runtime.Pager[PermissionsClientListByCustomerAtBillingAccountResponse]` + - New function `*PermissionsClient.NewListByDepartmentPager(string, string, *PermissionsClientListByDepartmentOptions) *runtime.Pager[PermissionsClientListByDepartmentResponse]` + - New function `*PermissionsClient.NewListByEnrollmentAccountPager(string, string, *PermissionsClientListByEnrollmentAccountOptions) *runtime.Pager[PermissionsClientListByEnrollmentAccountResponse]` + - New function `*PermissionsClient.NewListByInvoiceSectionPager(string, string, string, *PermissionsClientListByInvoiceSectionOptions) *runtime.Pager[PermissionsClientListByInvoiceSectionResponse]` + - New function `*PoliciesClient.BeginCreateOrUpdateByBillingAccount(context.Context, string, AccountPolicy, *PoliciesClientBeginCreateOrUpdateByBillingAccountOptions) (*runtime.Poller[PoliciesClientCreateOrUpdateByBillingAccountResponse], error)` + - New function `*PoliciesClient.BeginCreateOrUpdateByBillingProfile(context.Context, string, string, ProfilePolicy, *PoliciesClientBeginCreateOrUpdateByBillingProfileOptions) (*runtime.Poller[PoliciesClientCreateOrUpdateByBillingProfileResponse], error)` + - New function `*PoliciesClient.BeginCreateOrUpdateByCustomer(context.Context, string, string, string, CustomerPolicy, *PoliciesClientBeginCreateOrUpdateByCustomerOptions) (*runtime.Poller[PoliciesClientCreateOrUpdateByCustomerResponse], error)` + - New function `*PoliciesClient.BeginCreateOrUpdateByCustomerAtBillingAccount(context.Context, string, string, CustomerPolicy, *PoliciesClientBeginCreateOrUpdateByCustomerAtBillingAccountOptions) (*runtime.Poller[PoliciesClientCreateOrUpdateByCustomerAtBillingAccountResponse], error)` + - New function `*PoliciesClient.GetByBillingAccount(context.Context, string, *PoliciesClientGetByBillingAccountOptions) (PoliciesClientGetByBillingAccountResponse, error)` + - New function `*PoliciesClient.GetByCustomerAtBillingAccount(context.Context, string, string, *PoliciesClientGetByCustomerAtBillingAccountOptions) (PoliciesClientGetByCustomerAtBillingAccountResponse, error)` + - New function `*PoliciesClient.GetBySubscription(context.Context, *PoliciesClientGetBySubscriptionOptions) (PoliciesClientGetBySubscriptionResponse, error)` + - New function `PossibleCancellationValues() []Cancellation` + - New function `*ProductsClient.ValidateMoveEligibility(context.Context, string, string, MoveProductRequest, *ProductsClientValidateMoveEligibilityOptions) (ProductsClientValidateMoveEligibilityResponse, error)` + - New function `*ProfilesClient.BeginDelete(context.Context, string, string, *ProfilesClientBeginDeleteOptions) (*runtime.Poller[ProfilesClientDeleteResponse], error)` + - New function `*ProfilesClient.ValidateDeleteEligibility(context.Context, string, string, *ProfilesClientValidateDeleteEligibilityOptions) (ProfilesClientValidateDeleteEligibilityResponse, error)` + - New function `NewRecipientTransfersClient(azcore.TokenCredential, *arm.ClientOptions) (*RecipientTransfersClient, error)` + - New function `*RecipientTransfersClient.Accept(context.Context, string, AcceptTransferRequest, *RecipientTransfersClientAcceptOptions) (RecipientTransfersClientAcceptResponse, error)` + - New function `*RecipientTransfersClient.Decline(context.Context, string, *RecipientTransfersClientDeclineOptions) (RecipientTransfersClientDeclineResponse, error)` + - New function `*RecipientTransfersClient.Get(context.Context, string, *RecipientTransfersClientGetOptions) (RecipientTransfersClientGetResponse, error)` + - New function `*RecipientTransfersClient.NewListPager(*RecipientTransfersClientListOptions) *runtime.Pager[RecipientTransfersClientListResponse]` + - New function `*RecipientTransfersClient.Validate(context.Context, string, AcceptTransferRequest, *RecipientTransfersClientValidateOptions) (RecipientTransfersClientValidateResponse, error)` + - New function `NewRequestsClient(azcore.TokenCredential, *arm.ClientOptions) (*RequestsClient, error)` + - New function `*RequestsClient.BeginCreateOrUpdate(context.Context, string, Request, *RequestsClientBeginCreateOrUpdateOptions) (*runtime.Poller[RequestsClientCreateOrUpdateResponse], error)` + - New function `*RequestsClient.Get(context.Context, string, *RequestsClientGetOptions) (RequestsClientGetResponse, error)` + - New function `*RequestsClient.NewListByBillingAccountPager(string, *RequestsClientListByBillingAccountOptions) *runtime.Pager[RequestsClientListByBillingAccountResponse]` + - New function `*RequestsClient.NewListByBillingProfilePager(string, string, *RequestsClientListByBillingProfileOptions) *runtime.Pager[RequestsClientListByBillingProfileResponse]` + - New function `*RequestsClient.NewListByCustomerPager(string, string, string, *RequestsClientListByCustomerOptions) *runtime.Pager[RequestsClientListByCustomerResponse]` + - New function `*RequestsClient.NewListByInvoiceSectionPager(string, string, string, *RequestsClientListByInvoiceSectionOptions) *runtime.Pager[RequestsClientListByInvoiceSectionResponse]` + - New function `*RequestsClient.NewListByUserPager(*RequestsClientListByUserOptions) *runtime.Pager[RequestsClientListByUserResponse]` + - New function `NewReservationOrdersClient(azcore.TokenCredential, *arm.ClientOptions) (*ReservationOrdersClient, error)` + - New function `*ReservationOrdersClient.GetByBillingAccount(context.Context, string, string, *ReservationOrdersClientGetByBillingAccountOptions) (ReservationOrdersClientGetByBillingAccountResponse, error)` + - New function `*ReservationOrdersClient.NewListByBillingAccountPager(string, *ReservationOrdersClientListByBillingAccountOptions) *runtime.Pager[ReservationOrdersClientListByBillingAccountResponse]` + - New function `*ReservationsClient.GetByReservationOrder(context.Context, string, string, string, *ReservationsClientGetByReservationOrderOptions) (ReservationsClientGetByReservationOrderResponse, error)` + - New function `*ReservationsClient.NewListByReservationOrderPager(string, string, *ReservationsClientListByReservationOrderOptions) *runtime.Pager[ReservationsClientListByReservationOrderResponse]` + - New function `*ReservationsClient.BeginUpdateByBillingAccount(context.Context, string, string, string, Patch, *ReservationsClientBeginUpdateByBillingAccountOptions) (*runtime.Poller[ReservationsClientUpdateByBillingAccountResponse], error)` + - New function `*RoleAssignmentsClient.BeginCreateByBillingAccount(context.Context, string, RoleAssignmentProperties, *RoleAssignmentsClientBeginCreateByBillingAccountOptions) (*runtime.Poller[RoleAssignmentsClientCreateByBillingAccountResponse], error)` + - New function `*RoleAssignmentsClient.BeginCreateByBillingProfile(context.Context, string, string, RoleAssignmentProperties, *RoleAssignmentsClientBeginCreateByBillingProfileOptions) (*runtime.Poller[RoleAssignmentsClientCreateByBillingProfileResponse], error)` + - New function `*RoleAssignmentsClient.BeginCreateByCustomer(context.Context, string, string, string, RoleAssignmentProperties, *RoleAssignmentsClientBeginCreateByCustomerOptions) (*runtime.Poller[RoleAssignmentsClientCreateByCustomerResponse], error)` + - New function `*RoleAssignmentsClient.BeginCreateByInvoiceSection(context.Context, string, string, string, RoleAssignmentProperties, *RoleAssignmentsClientBeginCreateByInvoiceSectionOptions) (*runtime.Poller[RoleAssignmentsClientCreateByInvoiceSectionResponse], error)` + - New function `*RoleAssignmentsClient.BeginCreateOrUpdateByBillingAccount(context.Context, string, string, RoleAssignment, *RoleAssignmentsClientBeginCreateOrUpdateByBillingAccountOptions) (*runtime.Poller[RoleAssignmentsClientCreateOrUpdateByBillingAccountResponse], error)` + - New function `*RoleAssignmentsClient.BeginCreateOrUpdateByDepartment(context.Context, string, string, string, RoleAssignment, *RoleAssignmentsClientBeginCreateOrUpdateByDepartmentOptions) (*runtime.Poller[RoleAssignmentsClientCreateOrUpdateByDepartmentResponse], error)` + - New function `*RoleAssignmentsClient.BeginCreateOrUpdateByEnrollmentAccount(context.Context, string, string, string, RoleAssignment, *RoleAssignmentsClientBeginCreateOrUpdateByEnrollmentAccountOptions) (*runtime.Poller[RoleAssignmentsClientCreateOrUpdateByEnrollmentAccountResponse], error)` + - New function `*RoleAssignmentsClient.DeleteByCustomer(context.Context, string, string, string, string, *RoleAssignmentsClientDeleteByCustomerOptions) (RoleAssignmentsClientDeleteByCustomerResponse, error)` + - New function `*RoleAssignmentsClient.DeleteByDepartment(context.Context, string, string, string, *RoleAssignmentsClientDeleteByDepartmentOptions) (RoleAssignmentsClientDeleteByDepartmentResponse, error)` + - New function `*RoleAssignmentsClient.DeleteByEnrollmentAccount(context.Context, string, string, string, *RoleAssignmentsClientDeleteByEnrollmentAccountOptions) (RoleAssignmentsClientDeleteByEnrollmentAccountResponse, error)` + - New function `*RoleAssignmentsClient.GetByCustomer(context.Context, string, string, string, string, *RoleAssignmentsClientGetByCustomerOptions) (RoleAssignmentsClientGetByCustomerResponse, error)` + - New function `*RoleAssignmentsClient.GetByDepartment(context.Context, string, string, string, *RoleAssignmentsClientGetByDepartmentOptions) (RoleAssignmentsClientGetByDepartmentResponse, error)` + - New function `*RoleAssignmentsClient.GetByEnrollmentAccount(context.Context, string, string, string, *RoleAssignmentsClientGetByEnrollmentAccountOptions) (RoleAssignmentsClientGetByEnrollmentAccountResponse, error)` + - New function `*RoleAssignmentsClient.NewListByCustomerPager(string, string, string, *RoleAssignmentsClientListByCustomerOptions) *runtime.Pager[RoleAssignmentsClientListByCustomerResponse]` + - New function `*RoleAssignmentsClient.NewListByDepartmentPager(string, string, *RoleAssignmentsClientListByDepartmentOptions) *runtime.Pager[RoleAssignmentsClientListByDepartmentResponse]` + - New function `*RoleAssignmentsClient.NewListByEnrollmentAccountPager(string, string, *RoleAssignmentsClientListByEnrollmentAccountOptions) *runtime.Pager[RoleAssignmentsClientListByEnrollmentAccountResponse]` + - New function `*RoleAssignmentsClient.BeginResolveByBillingAccount(context.Context, string, *RoleAssignmentsClientBeginResolveByBillingAccountOptions) (*runtime.Poller[RoleAssignmentsClientResolveByBillingAccountResponse], error)` + - New function `*RoleAssignmentsClient.BeginResolveByBillingProfile(context.Context, string, string, *RoleAssignmentsClientBeginResolveByBillingProfileOptions) (*runtime.Poller[RoleAssignmentsClientResolveByBillingProfileResponse], error)` + - New function `*RoleAssignmentsClient.BeginResolveByCustomer(context.Context, string, string, string, *RoleAssignmentsClientBeginResolveByCustomerOptions) (*runtime.Poller[RoleAssignmentsClientResolveByCustomerResponse], error)` + - New function `*RoleAssignmentsClient.BeginResolveByInvoiceSection(context.Context, string, string, string, *RoleAssignmentsClientBeginResolveByInvoiceSectionOptions) (*runtime.Poller[RoleAssignmentsClientResolveByInvoiceSectionResponse], error)` + - New function `NewRoleDefinitionClient(azcore.TokenCredential, *arm.ClientOptions) (*RoleDefinitionClient, error)` + - New function `*RoleDefinitionClient.GetByBillingAccount(context.Context, string, string, *RoleDefinitionClientGetByBillingAccountOptions) (RoleDefinitionClientGetByBillingAccountResponse, error)` + - New function `*RoleDefinitionClient.GetByBillingProfile(context.Context, string, string, string, *RoleDefinitionClientGetByBillingProfileOptions) (RoleDefinitionClientGetByBillingProfileResponse, error)` + - New function `*RoleDefinitionClient.GetByCustomer(context.Context, string, string, string, string, *RoleDefinitionClientGetByCustomerOptions) (RoleDefinitionClientGetByCustomerResponse, error)` + - New function `*RoleDefinitionClient.GetByDepartment(context.Context, string, string, string, *RoleDefinitionClientGetByDepartmentOptions) (RoleDefinitionClientGetByDepartmentResponse, error)` + - New function `*RoleDefinitionClient.GetByEnrollmentAccount(context.Context, string, string, string, *RoleDefinitionClientGetByEnrollmentAccountOptions) (RoleDefinitionClientGetByEnrollmentAccountResponse, error)` + - New function `*RoleDefinitionClient.GetByInvoiceSection(context.Context, string, string, string, string, *RoleDefinitionClientGetByInvoiceSectionOptions) (RoleDefinitionClientGetByInvoiceSectionResponse, error)` + - New function `*RoleDefinitionClient.NewListByBillingAccountPager(string, *RoleDefinitionClientListByBillingAccountOptions) *runtime.Pager[RoleDefinitionClientListByBillingAccountResponse]` + - New function `*RoleDefinitionClient.NewListByBillingProfilePager(string, string, *RoleDefinitionClientListByBillingProfileOptions) *runtime.Pager[RoleDefinitionClientListByBillingProfileResponse]` + - New function `*RoleDefinitionClient.NewListByCustomerPager(string, string, string, *RoleDefinitionClientListByCustomerOptions) *runtime.Pager[RoleDefinitionClientListByCustomerResponse]` + - New function `*RoleDefinitionClient.NewListByDepartmentPager(string, string, *RoleDefinitionClientListByDepartmentOptions) *runtime.Pager[RoleDefinitionClientListByDepartmentResponse]` + - New function `*RoleDefinitionClient.NewListByEnrollmentAccountPager(string, string, *RoleDefinitionClientListByEnrollmentAccountOptions) *runtime.Pager[RoleDefinitionClientListByEnrollmentAccountResponse]` + - New function `*RoleDefinitionClient.NewListByInvoiceSectionPager(string, string, string, *RoleDefinitionClientListByInvoiceSectionOptions) *runtime.Pager[RoleDefinitionClientListByInvoiceSectionResponse]` + - New function `NewSavingsPlanOrdersClient(azcore.TokenCredential, *arm.ClientOptions) (*SavingsPlanOrdersClient, error)` + - New function `*SavingsPlanOrdersClient.GetByBillingAccount(context.Context, string, string, *SavingsPlanOrdersClientGetByBillingAccountOptions) (SavingsPlanOrdersClientGetByBillingAccountResponse, error)` + - New function `*SavingsPlanOrdersClient.NewListByBillingAccountPager(string, *SavingsPlanOrdersClientListByBillingAccountOptions) *runtime.Pager[SavingsPlanOrdersClientListByBillingAccountResponse]` + - New function `NewSavingsPlansClient(azcore.TokenCredential, *arm.ClientOptions) (*SavingsPlansClient, error)` + - New function `*SavingsPlansClient.GetByBillingAccount(context.Context, string, string, string, *SavingsPlansClientGetByBillingAccountOptions) (SavingsPlansClientGetByBillingAccountResponse, error)` + - New function `*SavingsPlansClient.NewListByBillingAccountPager(string, *SavingsPlansClientListByBillingAccountOptions) *runtime.Pager[SavingsPlansClientListByBillingAccountResponse]` + - New function `*SavingsPlansClient.NewListBySavingsPlanOrderPager(string, string, *SavingsPlansClientListBySavingsPlanOrderOptions) *runtime.Pager[SavingsPlansClientListBySavingsPlanOrderResponse]` + - New function `*SavingsPlansClient.BeginUpdateByBillingAccount(context.Context, string, string, string, SavingsPlanUpdateRequest, *SavingsPlansClientBeginUpdateByBillingAccountOptions) (*runtime.Poller[SavingsPlansClientUpdateByBillingAccountResponse], error)` + - New function `*SavingsPlansClient.ValidateUpdateByBillingAccount(context.Context, string, string, string, SavingsPlanUpdateValidateRequest, *SavingsPlansClientValidateUpdateByBillingAccountOptions) (SavingsPlansClientValidateUpdateByBillingAccountResponse, error)` + - New function `NewSubscriptionsAliasesClient(azcore.TokenCredential, *arm.ClientOptions) (*SubscriptionsAliasesClient, error)` + - New function `*SubscriptionsAliasesClient.BeginCreateOrUpdate(context.Context, string, string, SubscriptionAlias, *SubscriptionsAliasesClientBeginCreateOrUpdateOptions) (*runtime.Poller[SubscriptionsAliasesClientCreateOrUpdateResponse], error)` + - New function `*SubscriptionsAliasesClient.Get(context.Context, string, string, *SubscriptionsAliasesClientGetOptions) (SubscriptionsAliasesClientGetResponse, error)` + - New function `*SubscriptionsAliasesClient.NewListByBillingAccountPager(string, *SubscriptionsAliasesClientListByBillingAccountOptions) *runtime.Pager[SubscriptionsAliasesClientListByBillingAccountResponse]` + - New function `*SubscriptionsClient.BeginCancel(context.Context, string, string, CancelSubscriptionRequest, *SubscriptionsClientBeginCancelOptions) (*runtime.Poller[SubscriptionsClientCancelResponse], error)` + - New function `*SubscriptionsClient.BeginDelete(context.Context, string, string, *SubscriptionsClientBeginDeleteOptions) (*runtime.Poller[SubscriptionsClientDeleteResponse], error)` + - New function `*SubscriptionsClient.GetByBillingProfile(context.Context, string, string, string, *SubscriptionsClientGetByBillingProfileOptions) (SubscriptionsClientGetByBillingProfileResponse, error)` + - New function `*SubscriptionsClient.NewListByCustomerAtBillingAccountPager(string, string, *SubscriptionsClientListByCustomerAtBillingAccountOptions) *runtime.Pager[SubscriptionsClientListByCustomerAtBillingAccountResponse]` + - New function `*SubscriptionsClient.NewListByEnrollmentAccountPager(string, string, *SubscriptionsClientListByEnrollmentAccountOptions) *runtime.Pager[SubscriptionsClientListByEnrollmentAccountResponse]` + - New function `*SubscriptionsClient.BeginMerge(context.Context, string, string, SubscriptionMergeRequest, *SubscriptionsClientBeginMergeOptions) (*runtime.Poller[SubscriptionsClientMergeResponse], error)` + - New function `*SubscriptionsClient.BeginSplit(context.Context, string, string, SubscriptionSplitRequest, *SubscriptionsClientBeginSplitOptions) (*runtime.Poller[SubscriptionsClientSplitResponse], error)` + - New function `*SubscriptionsClient.ValidateMoveEligibility(context.Context, string, string, MoveBillingSubscriptionRequest, *SubscriptionsClientValidateMoveEligibilityOptions) (SubscriptionsClientValidateMoveEligibilityResponse, error)` + - New function `*TransactionsClient.GetTransactionSummaryByInvoice(context.Context, string, string, *TransactionsClientGetTransactionSummaryByInvoiceOptions) (TransactionsClientGetTransactionSummaryByInvoiceResponse, error)` + - New function `*TransactionsClient.NewListByBillingProfilePager(string, string, time.Time, time.Time, TransactionType, *TransactionsClientListByBillingProfileOptions) *runtime.Pager[TransactionsClientListByBillingProfileResponse]` + - New function `*TransactionsClient.NewListByCustomerPager(string, string, string, time.Time, time.Time, TransactionType, *TransactionsClientListByCustomerOptions) *runtime.Pager[TransactionsClientListByCustomerResponse]` + - New function `*TransactionsClient.NewListByInvoiceSectionPager(string, string, string, time.Time, time.Time, TransactionType, *TransactionsClientListByInvoiceSectionOptions) *runtime.Pager[TransactionsClientListByInvoiceSectionResponse]` + - New function `*TransactionsClient.BeginTransactionsDownloadByInvoice(context.Context, string, string, *TransactionsClientBeginTransactionsDownloadByInvoiceOptions) (*runtime.Poller[TransactionsClientTransactionsDownloadByInvoiceResponse], error)` + - New function `NewTransfersClient(azcore.TokenCredential, *arm.ClientOptions) (*TransfersClient, error)` + - New function `*TransfersClient.Cancel(context.Context, string, string, string, string, *TransfersClientCancelOptions) (TransfersClientCancelResponse, error)` + - New function `*TransfersClient.Get(context.Context, string, string, string, string, *TransfersClientGetOptions) (TransfersClientGetResponse, error)` + - New function `*TransfersClient.Initiate(context.Context, string, string, string, string, InitiateTransferRequest, *TransfersClientInitiateOptions) (TransfersClientInitiateResponse, error)` + - New function `*TransfersClient.NewListPager(string, string, string, *TransfersClientListOptions) *runtime.Pager[TransfersClientListResponse]` + - New struct `AcceptTransferProperties` + - New struct `AcceptTransferRequest` + - New struct `AccountPatch` + - New struct `AccountPolicy` + - New struct `AccountPolicyProperties` + - New struct `AccountPolicyPropertiesEnterpriseAgreementPolicies` + - New struct `AccountPropertiesEnrollmentDetails` + - New struct `AccountPropertiesRegistrationNumber` + - New struct `AccountPropertiesSoldTo` + - New struct `AddressValidationResponse` + - New struct `AppliedScopeProperties` + - New struct `AssociatedTenant` + - New struct `AssociatedTenantListResult` + - New struct `AssociatedTenantProperties` + - New struct `AvailableBalancePropertiesAmount` + - New struct `AvailableBalancePropertiesTotalPaymentsOnAccount` + - New struct `Beneficiary` + - New struct `CancelSubscriptionRequest` + - New struct `CheckAccessRequest` + - New struct `CheckAccessResponse` + - New struct `Commitment` + - New struct `DeleteBillingProfileEligibilityDetail` + - New struct `DeleteBillingProfileEligibilityResult` + - New struct `DeleteInvoiceSectionEligibilityDetail` + - New struct `DeleteInvoiceSectionEligibilityResult` + - New struct `DepartmentListResult` + - New struct `DetailedTransferStatus` + - New struct `DocumentDownloadRequest` + - New struct `DocumentDownloadResult` + - New struct `EnrollmentAccountSubscriptionDetails` + - New struct `EnrollmentDetails` + - New struct `EnrollmentDetailsIndirectRelationshipInfo` + - New struct `EnterpriseAgreementPolicies` + - New struct `ErrorAdditionalInfo` + - New struct `ErrorDetail` + - New struct `ExtendedStatusDefinitionProperties` + - New struct `ExtendedStatusInfo` + - New struct `ExtendedStatusInfoProperties` + - New struct `ExternalReference` + - New struct `FailedPayment` + - New struct `InitiateTransferProperties` + - New struct `InitiateTransferRequest` + - New struct `InvoiceDocument` + - New struct `InvoicePropertiesAmountDue` + - New struct `InvoicePropertiesAzurePrepaymentApplied` + - New struct `InvoicePropertiesBilledAmount` + - New struct `InvoicePropertiesCreditAmount` + - New struct `InvoicePropertiesFreeAzureCreditApplied` + - New struct `InvoicePropertiesRebillDetails` + - New struct `InvoicePropertiesRefundDetails` + - New struct `InvoicePropertiesSubTotal` + - New struct `InvoicePropertiesTaxAmount` + - New struct `InvoicePropertiesTotalAmount` + - New struct `InvoiceSectionWithCreateSubPermissionListResult` + - New struct `MoveBillingSubscriptionEligibilityResult` + - New struct `MoveBillingSubscriptionErrorDetails` + - New struct `MoveBillingSubscriptionRequest` + - New struct `MoveProductEligibilityResult` + - New struct `MoveProductEligibilityResultErrorDetails` + - New struct `MoveProductErrorDetails` + - New struct `MoveProductRequest` + - New struct `NextBillingCycleDetails` + - New struct `Participant` + - New struct `PartnerInitiateTransferProperties` + - New struct `PartnerInitiateTransferRequest` + - New struct `PartnerTransferDetails` + - New struct `PartnerTransferDetailsListResult` + - New struct `PartnerTransferProperties` + - New struct `Patch` + - New struct `PatchProperties` + - New struct `PatchPropertiesRenewProperties` + - New struct `Payment` + - New struct `PaymentAmount` + - New struct `PaymentDetail` + - New struct `PaymentMethod` + - New struct `PaymentMethodLink` + - New struct `PaymentMethodLinkProperties` + - New struct `PaymentMethodLinksListResult` + - New struct `PaymentMethodLogo` + - New struct `PaymentMethodProperties` + - New struct `PaymentMethodsListResult` + - New struct `PaymentOnAccount` + - New struct `PaymentOnAccountAmount` + - New struct `PaymentTerm` + - New struct `PaymentTermsEligibilityDetail` + - New struct `PaymentTermsEligibilityResult` + - New struct `Permission` + - New struct `PermissionListResult` + - New struct `PlanInformation` + - New struct `PolicySummary` + - New struct `Price` + - New struct `Principal` + - New struct `ProductDetails` + - New struct `ProductListResult` + - New struct `ProductPatch` + - New struct `ProductPropertiesLastCharge` + - New struct `ProductPropertiesReseller` + - New struct `ProfilePolicy` + - New struct `ProfilePolicyProperties` + - New struct `ProfilePolicyPropertiesEnterpriseAgreementPolicies` + - New struct `ProfilePropertiesBillTo` + - New struct `ProfilePropertiesCurrentPaymentTerm` + - New struct `ProfilePropertiesIndirectRelationshipInfo` + - New struct `ProfilePropertiesShipTo` + - New struct `ProfilePropertiesSoldTo` + - New struct `PropertyPropertiesEnrollmentDetails` + - New struct `PropertyPropertiesSubscriptionServiceUsageAddress` + - New struct `ProxyResource` + - New struct `ProxyResourceWithTags` + - New struct `PurchaseRequest` + - New struct `PurchaseRequestProperties` + - New struct `RecipientTransferDetails` + - New struct `RecipientTransferDetailsListResult` + - New struct `RecipientTransferProperties` + - New struct `RefundDetailsSummary` + - New struct `RefundDetailsSummaryAmountRefunded` + - New struct `RefundDetailsSummaryAmountRequested` + - New struct `RefundTransactionDetails` + - New struct `RefundTransactionDetailsAmountRefunded` + - New struct `RefundTransactionDetailsAmountRequested` + - New struct `RegistrationNumber` + - New struct `RenewProperties` + - New struct `RenewPropertiesResponse` + - New struct `RenewalTermDetails` + - New struct `Request` + - New struct `RequestListResult` + - New struct `RequestProperties` + - New struct `RequestPropertiesCreatedBy` + - New struct `RequestPropertiesLastUpdatedBy` + - New struct `RequestPropertiesReviewedBy` + - New struct `ReservationAppliedScopeProperties` + - New struct `ReservationExtendedStatusInfo` + - New struct `ReservationList` + - New struct `ReservationMergeProperties` + - New struct `ReservationOrder` + - New struct `ReservationOrderBillingPlanInformation` + - New struct `ReservationOrderList` + - New struct `ReservationOrderProperty` + - New struct `ReservationPaymentDetail` + - New struct `ReservationPurchaseRequest` + - New struct `ReservationPurchaseRequestProperties` + - New struct `ReservationPurchaseRequestPropertiesReservedResourceProperties` + - New struct `ReservationSplitProperties` + - New struct `ReservationSwapProperties` + - New struct `SKU` + - New struct `SKUName` + - New struct `SavingsPlanModel` + - New struct `SavingsPlanModelList` + - New struct `SavingsPlanModelListResult` + - New struct `SavingsPlanModelProperties` + - New struct `SavingsPlanOrderModel` + - New struct `SavingsPlanOrderModelList` + - New struct `SavingsPlanOrderModelProperties` + - New struct `SavingsPlanSummaryCount` + - New struct `SavingsPlanUpdateRequest` + - New struct `SavingsPlanUpdateRequestProperties` + - New struct `SavingsPlanUpdateValidateRequest` + - New struct `SavingsPlanValidResponseProperty` + - New struct `SavingsPlanValidateResponse` + - New struct `SpendingLimitDetails` + - New struct `SubscriptionAlias` + - New struct `SubscriptionAliasListResult` + - New struct `SubscriptionAliasProperties` + - New struct `SubscriptionEnrollmentDetails` + - New struct `SubscriptionListResult` + - New struct `SubscriptionMergeRequest` + - New struct `SubscriptionPatch` + - New struct `SubscriptionPolicy` + - New struct `SubscriptionPolicyProperties` + - New struct `SubscriptionSplitRequest` + - New struct `SubscriptionStatusDetails` + - New struct `SystemData` + - New struct `SystemOverrides` + - New struct `TaxIdentifier` + - New struct `TransactionPropertiesAzureCreditApplied` + - New struct `TransactionPropertiesConsumptionCommitmentDecremented` + - New struct `TransactionPropertiesEffectivePrice` + - New struct `TransactionPropertiesMarketPrice` + - New struct `TransactionPropertiesRefundTransactionDetails` + - New struct `TransactionPropertiesSubTotal` + - New struct `TransactionPropertiesTax` + - New struct `TransactionPropertiesTransactionAmount` + - New struct `TransactionSummary` + - New struct `TransferDetails` + - New struct `TransferDetailsListResult` + - New struct `TransferError` + - New struct `TransferItemQueryParameter` + - New struct `TransferProperties` + - New struct `TransitionDetails` + - New struct `Utilization` + - New struct `UtilizationAggregates` + - New struct `ValidateTransferListResponse` + - New struct `ValidateTransferResponse` + - New struct `ValidateTransferResponseProperties` + - New struct `ValidationResultProperties` + - New field `SystemData`, `Tags` in struct `Account` + - New field `AccountStatusReasonCode`, `AccountSubType`, `BillingRelationshipTypes`, `HasNoBillingProfiles`, `PrimaryBillingTenantID`, `ProvisioningState`, `Qualifications`, `RegistrationNumber`, `TaxIDs` in struct `AccountProperties` + - New field `Filter` in struct `AccountsClientListInvoiceSectionsByCreateSubscriptionPermissionOptions` + - New anonymous field `InvoiceSectionWithCreateSubPermissionListResult` in struct `AccountsClientListInvoiceSectionsByCreateSubscriptionPermissionResponse` + - New field `Filter`, `IncludeAll`, `IncludeAllWithoutBillingProfiles`, `IncludeDeleted`, `IncludePendingAgreement`, `IncludeResellee`, `LegalOwnerOID`, `LegalOwnerTID`, `Search`, `Skip`, `Top` in struct `AccountsClientListOptions` + - New anonymous field `AddressValidationResponse` in struct `AddressClientValidateResponse` + - New field `IsValidAddress` in struct `AddressDetails` + - New field `SystemData`, `Tags` in struct `Agreement` + - New field `DisplayName`, `LeadBillingAccountName` in struct `AgreementProperties` + - New field `SystemData`, `Tags` in struct `AvailableBalance` + - New field `PaymentsOnAccount`, `TotalPaymentsOnAccount` in struct `AvailableBalanceProperties` + - New field `ProductID` in struct `AzurePlan` + - New field `SystemData`, `Tags` in struct `Customer` + - New field `SystemData`, `Tags` in struct `CustomerPolicy` + - New field `Policies`, `ProvisioningState` in struct `CustomerPolicyProperties` + - New field `Status`, `SystemID`, `Tags` in struct `CustomerProperties` + - New field `Count`, `Expand`, `OrderBy`, `Skip`, `Top` in struct `CustomersClientListByBillingAccountOptions` + - New field `Count`, `Expand`, `OrderBy`, `Skip`, `Top` in struct `CustomersClientListByBillingProfileOptions` + - New field `SystemData`, `Tags` in struct `Department` + - New field `DisplayName`, `ID` in struct `DepartmentProperties` + - New field `SystemData`, `Tags` in struct `EnrollmentAccount` + - New field `AuthType`, `DepartmentDisplayName`, `DepartmentID`, `DisplayName`, `IsDevTestEnabled` in struct `EnrollmentAccountProperties` + - New anonymous field `EnrollmentAccount` in struct `EnrollmentAccountsClientGetResponse` + - New field `SystemData`, `Tags` in struct `Invoice` + - New field `FailedPayments`, `RefundDetails`, `SpecialTaxationType`, `SubscriptionDisplayName` in struct `InvoiceProperties` + - New field `SystemData`, `Tags` in struct `InvoiceSection` + - New field `ProvisioningState`, `ReasonCode` in struct `InvoiceSectionProperties` + - New field `Count`, `Filter`, `IncludeDeleted`, `OrderBy`, `Search`, `Skip`, `Top` in struct `InvoiceSectionsClientListByBillingProfileOptions` + - New field `Count`, `Filter`, `OrderBy`, `PeriodEndDate`, `PeriodStartDate`, `Search`, `Skip`, `Top` in struct `InvoicesClientListByBillingAccountOptions` + - New field `Count`, `Filter`, `OrderBy`, `PeriodEndDate`, `PeriodStartDate`, `Search`, `Skip`, `Top` in struct `InvoicesClientListByBillingProfileOptions` + - New field `Count`, `Filter`, `OrderBy`, `PeriodEndDate`, `PeriodStartDate`, `Search`, `Skip`, `Top` in struct `InvoicesClientListByBillingSubscriptionOptions` + - New anonymous field `PermissionListResult` in struct `PermissionsClientListByBillingAccountResponse` + - New anonymous field `PermissionListResult` in struct `PermissionsClientListByBillingProfileResponse` + - New anonymous field `PermissionListResult` in struct `PermissionsClientListByCustomerResponse` + - New anonymous field `ProfilePolicy` in struct `PoliciesClientGetByBillingProfileResponse` + - New field `SystemData`, `Tags` in struct `Product` + - New field `Count`, `OrderBy`, `Search`, `Skip`, `Top` in struct `ProductsClientListByBillingAccountOptions` + - New anonymous field `ProductListResult` in struct `ProductsClientListByBillingAccountResponse` + - New field `Count`, `OrderBy`, `Search`, `Skip`, `Top` in struct `ProductsClientListByBillingProfileOptions` + - New anonymous field `ProductListResult` in struct `ProductsClientListByBillingProfileResponse` + - New field `Count`, `Filter`, `OrderBy`, `Search`, `Skip`, `Top` in struct `ProductsClientListByCustomerOptions` + - New anonymous field `ProductListResult` in struct `ProductsClientListByCustomerResponse` + - New field `Count`, `OrderBy`, `Search`, `Skip`, `Top` in struct `ProductsClientListByInvoiceSectionOptions` + - New anonymous field `ProductListResult` in struct `ProductsClientListByInvoiceSectionResponse` + - New field `SystemData`, `Tags` in struct `Profile` + - New field `BillingAccountID`, `BillingProfileSystemID` in struct `ProfileInfo` + - New field `CurrentPaymentTerm`, `InvoiceRecipients`, `OtherPaymentTerms`, `ProvisioningState`, `ShipTo`, `SoldTo`, `SpendingLimitDetails` in struct `ProfileProperties` + - New field `Count`, `Filter`, `IncludeDeleted`, `OrderBy`, `Search`, `Skip`, `Top` in struct `ProfilesClientListByBillingAccountOptions` + - New field `SystemData`, `Tags` in struct `Property` + - New field `IncludeBillingCountry`, `IncludeTransitionStatus` in struct `PropertyClientGetOptions` + - New field `BillingAccountAgreementType`, `BillingAccountSoldToCountry`, `BillingAccountStatus`, `BillingAccountStatusReasonCode`, `BillingAccountSubType`, `BillingAccountType`, `BillingCurrency`, `BillingProfilePaymentMethodFamily`, `BillingProfilePaymentMethodType`, `BillingProfileSpendingLimitDetails`, `CustomerDisplayName`, `CustomerID`, `CustomerStatus`, `EnrollmentDetails`, `InvoiceSectionStatus`, `InvoiceSectionStatusReasonCode`, `IsTransitionedBillingAccount`, `SubscriptionBillingStatus`, `SubscriptionBillingStatusDetails`, `SubscriptionBillingType`, `SubscriptionServiceUsageAddress`, `SubscriptionWorkloadType` in struct `PropertyProperties` + - New field `Etag`, `SystemData`, `Tags` in struct `Reservation` + - New field `AppliedScopeProperties`, `Archived`, `BenefitStartTime`, `BillingPlan`, `BillingScopeID`, `Capabilities`, `ExpiryDateTime`, `ExtendedStatusInfo`, `InstanceFlexibility`, `LastUpdatedDateTime`, `MergeProperties`, `ProductCode`, `PurchaseDate`, `PurchaseDateTime`, `RenewDestination`, `RenewProperties`, `ReviewDateTime`, `SplitProperties`, `SwapProperties` in struct `ReservationProperty` + - New field `NoBenefitCount`, `ProcessingCount`, `WarningCount` in struct `ReservationSummary` + - New field `OrderBy`, `Skiptoken`, `Take` in struct `ReservationsClientListByBillingAccountOptions` + - New field `OrderBy`, `Skiptoken`, `Take` in struct `ReservationsClientListByBillingProfileOptions` + - New field `SystemData` in struct `Resource` + - New field `SystemData`, `Tags` in struct `RoleAssignment` + - New field `BillingAccountDisplayName`, `BillingAccountID`, `BillingProfileDisplayName`, `BillingProfileID`, `BillingRequestID`, `CreatedByPrincipalPuid`, `CustomerDisplayName`, `CustomerID`, `InvoiceSectionDisplayName`, `InvoiceSectionID`, `ModifiedByPrincipalID`, `ModifiedByPrincipalPuid`, `ModifiedByPrincipalTenantID`, `ModifiedByUserEmailAddress`, `ModifiedOn`, `PrincipalDisplayName`, `PrincipalPuid`, `PrincipalTenantName`, `PrincipalType`, `ProvisioningState` in struct `RoleAssignmentProperties` + - New field `Filter`, `Skip`, `Top` in struct `RoleAssignmentsClientListByBillingAccountOptions` + - New field `Filter`, `Skip`, `Top` in struct `RoleAssignmentsClientListByBillingProfileOptions` + - New field `Filter`, `Skip`, `Top` in struct `RoleAssignmentsClientListByInvoiceSectionOptions` + - New field `SystemData`, `Tags` in struct `RoleDefinition` + - New field `SystemData`, `Tags` in struct `Subscription` + - New field `AutoRenew`, `Beneficiary`, `BeneficiaryTenantID`, `BillingFrequency`, `BillingPolicies`, `BillingProfileName`, `ConsumptionCostCenter`, `CustomerName`, `EnrollmentAccountDisplayName`, `EnrollmentAccountID`, `EnrollmentAccountSubscriptionDetails`, `InvoiceSectionName`, `NextBillingCycleDetails`, `OfferID`, `OperationStatus`, `ProductCategory`, `ProductType`, `ProductTypeID`, `ProvisioningState`, `ProvisioningTenantID`, `PurchaseDate`, `Quantity`, `RenewalTermDetails`, `ResourceURI`, `Status`, `SuspensionReasonDetails`, `SystemOverrides`, `TermDuration`, `TermEndDate`, `TermStartDate` in struct `SubscriptionProperties` + - New field `Expand` in struct `SubscriptionsClientGetOptions` + - New field `Count`, `Expand`, `Filter`, `IncludeDeleted`, `IncludeFailed`, `IncludeTenantSubscriptions`, `OrderBy`, `Search`, `Skip`, `Top` in struct `SubscriptionsClientListByBillingAccountOptions` + - New anonymous field `SubscriptionListResult` in struct `SubscriptionsClientListByBillingAccountResponse` + - New field `Count`, `Expand`, `Filter`, `IncludeDeleted`, `OrderBy`, `Search`, `Skip`, `Top` in struct `SubscriptionsClientListByBillingProfileOptions` + - New anonymous field `SubscriptionListResult` in struct `SubscriptionsClientListByBillingProfileResponse` + - New field `Count`, `Expand`, `Filter`, `IncludeDeleted`, `OrderBy`, `Search`, `Skip`, `Top` in struct `SubscriptionsClientListByCustomerOptions` + - New anonymous field `SubscriptionListResult` in struct `SubscriptionsClientListByCustomerResponse` + - New field `Count`, `Expand`, `Filter`, `IncludeDeleted`, `OrderBy`, `Search`, `Skip`, `Top` in struct `SubscriptionsClientListByInvoiceSectionOptions` + - New anonymous field `SubscriptionListResult` in struct `SubscriptionsClientListByInvoiceSectionResponse` + - New field `SystemData`, `Tags` in struct `Transaction` + - New field `ConsumptionCommitmentDecremented`, `CreditType`, `IsThirdParty`, `PartNumber`, `ReasonCode`, `RefundTransactionDetails`, `SpecialTaxationType` in struct `TransactionProperties` + - New field `Count`, `Filter`, `OrderBy`, `Search`, `Skip`, `Top` in struct `TransactionsClientListByInvoiceOptions` From 2b6c728b10f0d8eca8bad4e7f009e38334ea7f1c Mon Sep 17 00:00:00 2001 From: Drishti Peshwani <148189108+drishtipeshwani09@users.noreply.github.com> Date: Wed, 26 Jun 2024 22:03:46 +0530 Subject: [PATCH 23/52] Microsoft.ContainerInstance: Added API version 2024-05-01-preview (#28964) * Copy files from stable/2023-05-01 Copied the files in a separate commit. This allows reviewers to easily diff subsequent changes against the previous spec. * Update version to preview/2024-05-01-preview Updated the API version from stable/2023-05-01 to preview/2024-05-01-preview. * Added tag for 2024-05-01-preview in readme file * Added ContainerGroupProfile, StandbyPoolProfile, isCreatedFromStandbyPool to Container Group Properties and ConfigMap to ContainerProperties specs and modified examples * Corrected code style issues using prettier * Fixed code styling issues using prettier * Corrected definition types * Added isCreatedFromStandbyPool to container group properties in examples * Corrected config map property definition in example * Added arm resource id identifier for container group profile and standby pool profile * Added format variable for container group profile and standby pool profile reference id * Added 200 http status response in standby pool scenario example * Modified the Container Group Create with standby pools example * Corrected format * Created suppressions.yaml * Update containerInstance.json to remove osType,image and resources as required properties * Update suppressions.yaml * Update suppressions.yaml * Delete specification/containerinstance/resource-manager/suppressions.yaml * Added suppression for AvoidAdditionalProperties in readme.md * Update suppression in readme.md * Update readme.md --- .../2024-05-01-preview/containerInstance.json | 2609 +++++++++++++++++ .../examples/CachedImagesList.json | 27 + .../examples/CapabilitiesList.json | 39 + .../examples/ContainerAttach.json | 17 + .../examples/ContainerExec.json | 24 + .../ContainerGroupCreateConfidential.json | 184 ++ ...ntainerGroupCreateOrUpdateStandbyPool.json | 137 + .../ContainerGroupEncryptionProperties.json | 194 ++ .../examples/ContainerGroupExtensions.json | 210 ++ .../examples/ContainerGroupUsage.json | 24 + .../ContainerGroupsCreateOrUpdate.json | 318 ++ .../ContainerGroupsCreatePriority.json | 122 + .../examples/ContainerGroupsDelete.json | 86 + .../examples/ContainerGroupsGetPriority.json | 88 + .../examples/ContainerGroupsGet_Failed.json | 116 + .../ContainerGroupsGet_Succeeded.json | 80 + .../examples/ContainerGroupsList.json | 91 + .../ContainerGroupsListByResourceGroup.json | 83 + .../examples/ContainerGroupsRestart.json | 11 + .../examples/ContainerGroupsStart.json | 16 + .../examples/ContainerGroupsStop.json | 11 + .../examples/ContainerGroupsUpdate.json | 101 + .../examples/ContainerListLogs.json | 17 + .../examples/OperationsList.json | 23 + .../SubnetServiceAssociationLinkDelete.json | 18 + .../resource-manager/readme.md | 18 +- 26 files changed, 4663 insertions(+), 1 deletion(-) create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/containerInstance.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/CachedImagesList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/CapabilitiesList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerAttach.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerExec.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupCreateConfidential.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupCreateOrUpdateStandbyPool.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupEncryptionProperties.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupExtensions.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupUsage.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsCreateOrUpdate.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsCreatePriority.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsDelete.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGetPriority.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGet_Failed.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGet_Succeeded.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsListByResourceGroup.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsRestart.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsStart.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsStop.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsUpdate.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerListLogs.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/OperationsList.json create mode 100644 specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/SubnetServiceAssociationLinkDelete.json diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/containerInstance.json new file mode 100644 index 000000000000..1375a0e2998e --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/containerInstance.json @@ -0,0 +1,2609 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-05-01-preview", + "title": "ContainerInstanceManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://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.ContainerInstance/containerGroups": { + "get": { + "operationId": "ContainerGroups_List", + "x-ms-examples": { + "ContainerGroupsList": { + "$ref": "./examples/ContainerGroupsList.json" + } + }, + "summary": "Get a list of container groups in the specified subscription.", + "description": "Get a list of container groups in the specified subscription. This operation returns properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups": { + "get": { + "operationId": "ContainerGroups_ListByResourceGroup", + "x-ms-examples": { + "ContainerGroupsListByResourceGroup": { + "$ref": "./examples/ContainerGroupsListByResourceGroup.json" + } + }, + "summary": "Get a list of container groups in the specified subscription and resource group.", + "description": "Get a list of container groups in a specified subscription and resource group. This operation returns properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}": { + "get": { + "operationId": "ContainerGroups_Get", + "x-ms-examples": { + "ContainerGroupsGet_Succeeded": { + "$ref": "./examples/ContainerGroupsGet_Succeeded.json" + }, + "ContainerGroupsGet_Failed": { + "$ref": "./examples/ContainerGroupsGet_Failed.json" + }, + "ContainerGroupsGetWithPriority": { + "$ref": "./examples/ContainerGroupsGetPriority.json" + } + }, + "summary": "Get the properties of the specified container group.", + "description": "Gets the properties of the specified container group in the specified subscription and resource group. The operation returns the properties of each container group including containers, image registry credentials, restart policy, IP address type, OS type, state, and volumes.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "ContainerGroups_CreateOrUpdate", + "x-ms-examples": { + "ContainerGroupsCreateOrUpdate": { + "$ref": "./examples/ContainerGroupsCreateOrUpdate.json" + }, + "ContainerGroupCreateWithExtensions": { + "$ref": "./examples/ContainerGroupExtensions.json" + }, + "ContainerGroupWithEncryptionProperties": { + "$ref": "./examples/ContainerGroupEncryptionProperties.json" + }, + "ConfidentialContainerGroup": { + "$ref": "./examples/ContainerGroupCreateConfidential.json" + }, + "ContainerGroupCreateOrUpdateWithStandbyPool": { + "$ref": "./examples/ContainerGroupCreateOrUpdateStandbyPool.json" + }, + "ContainerGroupsCreateWithPriority": { + "$ref": "./examples/ContainerGroupsCreatePriority.json" + } + }, + "summary": "Create or update container groups.", + "description": "Create or update container groups with specified configurations.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerGroup", + "description": "The properties of the container group to be created or updated.", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "201": { + "description": "Created - the container group is created.", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "operationId": "ContainerGroups_Update", + "x-ms-examples": { + "ContainerGroupsUpdate": { + "$ref": "./examples/ContainerGroupsUpdate.json" + } + }, + "summary": "Update container groups.", + "description": "Updates container group tags with specified values.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "Resource", + "description": "The container group resource with just the tags to be updated.", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/Resource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "ContainerGroups_Delete", + "x-ms-examples": { + "ContainerGroupsDelete": { + "$ref": "./examples/ContainerGroupsDelete.json" + } + }, + "summary": "Delete the specified container group.", + "description": "Delete the specified container group in the specified subscription and resource group. The operation does not delete other resources provided by the user, such as volumes.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerGroup" + } + }, + "202": { + "description": "Delete started." + }, + "204": { + "description": "No Content - the specified container group was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/restart": { + "post": { + "operationId": "ContainerGroups_Restart", + "x-ms-examples": { + "ContainerRestart": { + "$ref": "./examples/ContainerGroupsRestart.json" + } + }, + "summary": "Restarts all containers in a container group.", + "description": "Restarts all containers in a container group in place. If container image has updates, new image will be downloaded.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/stop": { + "post": { + "operationId": "ContainerGroups_Stop", + "x-ms-examples": { + "ContainerStop": { + "$ref": "./examples/ContainerGroupsStop.json" + } + }, + "summary": "Stops all containers in a container group.", + "description": "Stops all containers in a container group. Compute resources will be deallocated and billing will stop.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/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. Compute resources will be allocated and billing will start.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "202": { + "description": "Started - the container group is starting." + }, + "204": { + "description": "Started - the container group is already running or starting." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.ContainerInstance/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/OperationsList.json" + } + }, + "description": "List the operations for Azure Container Instance service.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/usages": { + "get": { + "operationId": "Location_ListUsage", + "x-ms-examples": { + "ContainerUsage": { + "$ref": "./examples/ContainerGroupUsage.json" + } + }, + "description": "Get the usage for a subscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UsageListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/logs": { + "get": { + "operationId": "Containers_ListLogs", + "x-ms-examples": { + "ContainerListLogs": { + "$ref": "./examples/ContainerListLogs.json" + } + }, + "summary": "Get the logs for a specified container instance.", + "description": "Get the logs for a specified container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + }, + { + "name": "tail", + "in": "query", + "description": "The number of lines to show from the tail of the container instance log. If not provided, all available logs are shown up to 4mb.", + "type": "integer", + "format": "int32" + }, + { + "name": "timestamps", + "in": "query", + "description": "If true, adds a timestamp at the beginning of every line of log output. If not provided, defaults to false.", + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Logs" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/exec": { + "post": { + "operationId": "Containers_ExecuteCommand", + "x-ms-examples": { + "ContainerExec": { + "$ref": "./examples/ContainerExec.json" + } + }, + "summary": "Executes a command in a specific container instance.", + "description": "Executes a command for a specific container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + }, + { + "name": "containerExecRequest", + "in": "body", + "description": "The request for the exec command.", + "required": true, + "schema": { + "$ref": "#/definitions/ContainerExecRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerExecResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/containers/{containerName}/attach": { + "post": { + "operationId": "Containers_Attach", + "x-ms-examples": { + "ContainerAttach": { + "$ref": "./examples/ContainerAttach.json" + } + }, + "summary": "Attach to the output of a specific container instance.", + "description": "Attach to the output stream of a specific container instance in a specified resource group and container group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container instance.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ContainerAttachResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/cachedImages": { + "get": { + "operationId": "Location_ListCachedImages", + "x-ms-examples": { + "CachedImages": { + "$ref": "./examples/CachedImagesList.json" + } + }, + "summary": "Get the list of cached images.", + "description": "Get the list of cached images on specific OS type for a subscription in a region.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CachedImagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerInstance/locations/{location}/capabilities": { + "get": { + "operationId": "Location_ListCapabilities", + "x-ms-examples": { + "GetCapabilities": { + "$ref": "./examples/CapabilitiesList.json" + } + }, + "summary": "Get the list of capabilities of the location.", + "description": "Get the list of CPU/memory/GPU capabilities of a region.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CapabilitiesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/outboundNetworkDependenciesEndpoints": { + "get": { + "operationId": "ContainerGroups_GetOutboundNetworkDependenciesEndpoints", + "x-ms-examples": {}, + "summary": "Get all network dependencies for container group.", + "description": "Gets all the network dependencies for this container group to allow complete control of network setting and configuration. For container groups, this will always be an empty list.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkDependenciesResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/providers/Microsoft.ContainerInstance/serviceAssociationLinks/default": { + "delete": { + "operationId": "SubnetServiceAssociationLink_Delete", + "x-ms-examples": { + "SubnetServiceAssociationLinkDelete": { + "$ref": "./examples/SubnetServiceAssociationLinkDelete.json" + } + }, + "summary": "Delete container group virtual network association links.", + "description": "Delete container group virtual network association links. The operation does not delete other resources provided by the user.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/VirtualNetworkNameParameter" + }, + { + "$ref": "#/parameters/SubnetNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Delete started." + }, + "204": { + "description": "No Content - the specified container group was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "Container": { + "description": "A container instance.", + "type": "object", + "required": [ + "properties", + "name" + ], + "properties": { + "name": { + "description": "The user-provided name of the container instance.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the container instance.", + "$ref": "#/definitions/ContainerProperties" + } + } + }, + "ContainerProperties": { + "description": "The container instance properties.", + "type": "object", + "properties": { + "image": { + "description": "The name of the image used to create the container instance.", + "type": "string" + }, + "command": { + "description": "The commands to execute within the container instance in exec form.", + "type": "array", + "items": { + "type": "string" + } + }, + "ports": { + "description": "The exposed ports on the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/ContainerPort" + }, + "x-ms-identifiers": [ + "port" + ] + }, + "environmentVariables": { + "description": "The environment variables to set in the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the container instance. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "restartCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of times that the container instance has been restarted." + }, + "currentState": { + "readOnly": true, + "description": "Current container instance state.", + "$ref": "#/definitions/ContainerState" + }, + "previousState": { + "readOnly": true, + "description": "Previous container instance state.", + "$ref": "#/definitions/ContainerState" + }, + "events": { + "readOnly": true, + "description": "The events of the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + } + } + }, + "resources": { + "description": "The resource requirements of the container instance.", + "$ref": "#/definitions/ResourceRequirements" + }, + "volumeMounts": { + "description": "The volume mounts available to the container instance.", + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "livenessProbe": { + "description": "The liveness probe.", + "$ref": "#/definitions/ContainerProbe" + }, + "readinessProbe": { + "description": "The readiness probe.", + "$ref": "#/definitions/ContainerProbe" + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + }, + "configMap": { + "description": "The config map.", + "$ref": "#/definitions/ConfigMap" + } + } + }, + "ConfigMap": { + "description": "The container config map.", + "type": "object", + "properties": { + "keyValuePairs": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The list of key value pairs associated with the config map of the container." + }, + "description": "The key value pairs dictionary in the config map." + } + } + }, + "SecurityContextDefinition": { + "description": "The security context for the container.", + "type": "object", + "properties": { + "privileged": { + "type": "boolean", + "description": "The flag to determine if the container permissions is elevated to Privileged." + }, + "allowPrivilegeEscalation": { + "type": "boolean", + "description": "A boolean value indicating whether the init process can elevate its privileges" + }, + "capabilities": { + "description": "The capabilities to add or drop from a container.", + "$ref": "#/definitions/SecurityContextCapabilitiesDefinition" + }, + "runAsGroup": { + "type": "integer", + "format": "int32", + "description": "Sets the User GID for the container." + }, + "runAsUser": { + "type": "integer", + "format": "int32", + "description": "Sets the User UID for the container." + }, + "seccompProfile": { + "type": "string", + "description": "a base64 encoded string containing the contents of the JSON in the seccomp profile" + } + } + }, + "SecurityContextCapabilitiesDefinition": { + "description": "The capabilities to add or drop from a container.", + "type": "object", + "properties": { + "add": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The capabilities to add to the container." + }, + "drop": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The capabilities to drop from the container." + } + } + }, + "ContainerState": { + "description": "The container instance state.", + "type": "object", + "readOnly": true, + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the container instance." + }, + "startTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time when the container instance state started." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The container instance exit codes correspond to those from the `docker run` command." + }, + "finishTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time when the container instance state finished." + }, + "detailStatus": { + "type": "string", + "readOnly": true, + "description": "The human-readable status of the container instance state." + } + } + }, + "Event": { + "description": "A container group or container instance event.", + "type": "object", + "readOnly": true, + "properties": { + "count": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The count of the event." + }, + "firstTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time of the earliest logged event." + }, + "lastTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date-time of the latest logged event." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The event name." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The event message." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The event type." + } + } + }, + "ResourceRequirements": { + "description": "The resource requirements.", + "type": "object", + "required": [ + "requests" + ], + "properties": { + "requests": { + "description": "The resource requests of this container instance.", + "$ref": "#/definitions/ResourceRequests" + }, + "limits": { + "description": "The resource limits of this container instance.", + "$ref": "#/definitions/ResourceLimits" + } + } + }, + "ResourceRequests": { + "description": "The resource requests.", + "type": "object", + "required": [ + "memoryInGB", + "cpu" + ], + "properties": { + "memoryInGB": { + "description": "The memory request in GB of this container instance.", + "type": "number", + "format": "double" + }, + "cpu": { + "description": "The CPU request of this container instance.", + "type": "number", + "format": "double" + }, + "gpu": { + "description": "The GPU request of this container instance.", + "$ref": "#/definitions/GpuResource" + } + } + }, + "ResourceLimits": { + "description": "The resource limits.", + "type": "object", + "properties": { + "memoryInGB": { + "description": "The memory limit in GB of this container instance.", + "type": "number", + "format": "double" + }, + "cpu": { + "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 + } + } + } + }, + "AzureFileVolume": { + "description": "The properties of the Azure File volume. Azure File shares are mounted as volumes.", + "type": "object", + "required": [ + "shareName", + "storageAccountName" + ], + "properties": { + "shareName": { + "description": "The name of the Azure File share to be mounted as a volume.", + "type": "string" + }, + "readOnly": { + "description": "The flag indicating whether the Azure File shared mounted as a volume is read-only.", + "type": "boolean" + }, + "storageAccountName": { + "description": "The name of the storage account that contains the Azure File share.", + "type": "string" + }, + "storageAccountKey": { + "description": "The storage account access key used to access the Azure File share.", + "type": "string" + } + } + }, + "EmptyDirVolume": { + "description": "The empty directory volume.", + "type": "object", + "properties": {} + }, + "SecretVolume": { + "description": "The secret volume.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "GitRepoVolume": { + "description": "Represents a volume that is populated with the contents of a git repository", + "required": [ + "repository" + ], + "properties": { + "directory": { + "description": "Target directory name. Must not contain or start with '..'. If '.' is supplied, the volume directory will be the git repository. Otherwise, if specified, the volume will contain the git repository in the subdirectory with the given name.", + "type": "string" + }, + "repository": { + "description": "Repository URL", + "type": "string" + }, + "revision": { + "description": "Commit hash for the specified revision.", + "type": "string" + } + } + }, + "Volume": { + "description": "The properties of the volume.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the volume.", + "type": "string" + }, + "azureFile": { + "description": "The Azure File volume.", + "$ref": "#/definitions/AzureFileVolume" + }, + "emptyDir": { + "description": "The empty directory volume.", + "$ref": "#/definitions/EmptyDirVolume" + }, + "secret": { + "description": "The secret volume.", + "$ref": "#/definitions/SecretVolume" + }, + "gitRepo": { + "description": "The git repo volume.", + "$ref": "#/definitions/GitRepoVolume" + } + } + }, + "VolumeMount": { + "description": "The properties of the volume mount.", + "type": "object", + "required": [ + "name", + "mountPath" + ], + "properties": { + "name": { + "description": "The name of the volume mount.", + "type": "string" + }, + "mountPath": { + "description": "The path within the container where the volume should be mounted. Must not contain colon (:).", + "type": "string" + }, + "readOnly": { + "description": "The flag indicating whether the volume mount is read-only.", + "type": "boolean" + } + } + }, + "ContainerExec": { + "type": "object", + "description": "The container execution command, for liveness or readiness probe", + "properties": { + "command": { + "description": "The commands to execute within the container.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ContainerHttpGet": { + "type": "object", + "description": "The container Http Get settings, for liveness or readiness probe", + "properties": { + "path": { + "description": "The path to probe.", + "type": "string" + }, + "port": { + "type": "integer", + "description": "The port number to probe.", + "format": "int32" + }, + "scheme": { + "description": "The scheme.", + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Scheme", + "modelAsString": true + } + }, + "httpHeaders": { + "description": "The HTTP headers.", + "type": "array", + "items": { + "$ref": "#/definitions/HttpHeader" + }, + "x-ms-identifiers": [ + "name" + ] + } + }, + "required": [ + "port" + ] + }, + "ContainerProbe": { + "type": "object", + "description": "The container probe, for liveness or readiness", + "properties": { + "exec": { + "description": "The execution command to probe", + "$ref": "#/definitions/ContainerExec" + }, + "httpGet": { + "description": "The Http Get settings to probe", + "$ref": "#/definitions/ContainerHttpGet" + }, + "initialDelaySeconds": { + "description": "The initial delay seconds.", + "type": "integer", + "format": "int32" + }, + "periodSeconds": { + "description": "The period seconds.", + "type": "integer", + "format": "int32" + }, + "failureThreshold": { + "description": "The failure threshold.", + "type": "integer", + "format": "int32" + }, + "successThreshold": { + "description": "The success threshold.", + "type": "integer", + "format": "int32" + }, + "timeoutSeconds": { + "description": "The timeout seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "ContainerGroup": { + "description": "A container group.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/ContainerGroupProperties" + } + ] + }, + "ContainerGroupProperties": { + "description": "The container group properties", + "type": "object", + "required": [ + "properties" + ], + "properties": { + "identity": { + "$ref": "#/definitions/ContainerGroupIdentity", + "description": "The identity of the container group, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "type": "object", + "description": "The container group properties", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the container group. This only appears in the response." + }, + "containers": { + "type": "array", + "description": "The containers within the container group.", + "items": { + "$ref": "#/definitions/Container" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "imageRegistryCredentials": { + "type": "array", + "description": "The image registry credentials by which the container group is created from.", + "items": { + "$ref": "#/definitions/ImageRegistryCredential" + }, + "x-ms-identifiers": [ + "username" + ] + }, + "restartPolicy": { + "type": "string", + "description": "Restart policy for all containers within the container group. \n- `Always` Always restart\n- `OnFailure` Restart on failure\n- `Never` Never restart\n", + "enum": [ + "Always", + "OnFailure", + "Never" + ], + "x-ms-enum": { + "name": "ContainerGroupRestartPolicy", + "modelAsString": true + } + }, + "ipAddress": { + "description": "The IP address type of the container group.", + "$ref": "#/definitions/IpAddress" + }, + "osType": { + "type": "string", + "description": "The operating system type required by the containers in the container group.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": true + } + }, + "volumes": { + "type": "array", + "description": "The list of volumes that can be mounted by containers in this container group.", + "items": { + "$ref": "#/definitions/Volume" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the container group. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "events": { + "description": "The events of this container group.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + }, + "state": { + "readOnly": true, + "type": "string", + "description": "The state of the container group. Only valid in response." + } + } + }, + "diagnostics": { + "description": "The diagnostic information for a container group.", + "$ref": "#/definitions/ContainerGroupDiagnostics" + }, + "subnetIds": { + "type": "array", + "description": "The subnet resource IDs for a container group.", + "items": { + "$ref": "#/definitions/ContainerGroupSubnetId" + } + }, + "dnsConfig": { + "description": "The DNS config information for a container group.", + "$ref": "#/definitions/DnsConfiguration" + }, + "sku": { + "description": "The SKU for a container group.", + "$ref": "#/definitions/ContainerGroupSku" + }, + "encryptionProperties": { + "description": "The encryption properties for a container group.", + "$ref": "#/definitions/EncryptionProperties" + }, + "initContainers": { + "type": "array", + "description": "The init containers for a container group.", + "items": { + "$ref": "#/definitions/InitContainerDefinition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "extensions": { + "type": "array", + "description": "extensions used by virtual kubelet", + "items": { + "$ref": "#/definitions/DeploymentExtensionSpec" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "confidentialComputeProperties": { + "description": "The properties for confidential container group", + "$ref": "#/definitions/ConfidentialComputeProperties" + }, + "priority": { + "type": "string", + "description": "The priority of the container group.", + "enum": [ + "Regular", + "Spot" + ], + "x-ms-enum": { + "name": "ContainerGroupPriority", + "modelAsString": true + } + }, + "containerGroupProfile": { + "description": "The reference container group profile properties.", + "$ref": "#/definitions/ContainerGroupProfileReferenceDefinition" + }, + "standbyPoolProfile": { + "description": "The reference standby pool profile properties.", + "$ref": "#/definitions/StandbyPoolProfileDefinition" + }, + "isCreatedFromStandbyPool": { + "readOnly": true, + "type": "boolean", + "description": "The flag indicating whether the container group is created by standby pool." + } + }, + "required": [ + "containers" + ] + } + } + }, + "ContainerGroupProfileReferenceDefinition": { + "description": "The container group profile reference.", + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "arm-id", + "description": "The container group profile reference id.This will be an ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{containerGroupProfileName}'." + }, + "revision": { + "type": "integer", + "format": "int32", + "description": "The container group profile reference revision." + } + } + }, + "StandbyPoolProfileDefinition": { + "description": "The standby pool profile reference.", + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "arm-id", + "description": "The standby pool profile reference id.This will be an ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName}'." + }, + "failContainerGroupCreateOnReuseFailure": { + "type": "boolean", + "description": "The flag to determine whether ACI should fail the create request if the container group can not be obtained from standby pool." + } + } + }, + "DeploymentExtensionSpec": { + "description": "Extension sidecars to be added to the deployment.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the extension." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "Extension specific properties", + "properties": { + "extensionType": { + "type": "string", + "description": "Type of extension to be added." + }, + "version": { + "type": "string", + "description": "Version of the extension being used." + }, + "settings": { + "type": "object", + "description": "Settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "Protected settings for the extension." + } + }, + "required": [ + "extensionType", + "version" + ] + } + }, + "required": [ + "name" + ] + }, + "ContainerGroupIdentity": { + "description": "Identity for the container group.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the container group identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the container group. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the container group. 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 container group.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "description": "The list of user identities associated with the container group.", + "additionalProperties": { + "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "$ref": "#/definitions/UserAssignedIdentities" + } + } + } + }, + "UserAssignedIdentities": { + "type": "object", + "description": "The list of user identities associated with the container group. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "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." + } + } + }, + "ImageRegistryCredential": { + "description": "Image registry credential.", + "type": "object", + "properties": { + "server": { + "type": "string", + "description": "The Docker image registry server without a protocol such as \"http\" and \"https\"." + }, + "username": { + "type": "string", + "description": "The username for the private registry." + }, + "password": { + "type": "string", + "description": "The password for the private registry.", + "x-ms-secret": true + }, + "identity": { + "type": "string", + "description": "The identity for the private registry." + }, + "identityUrl": { + "type": "string", + "description": "The identity URL for the private registry." + } + }, + "required": [ + "server" + ] + }, + "ContainerGroupDiagnostics": { + "description": "Container group diagnostic information.", + "type": "object", + "properties": { + "logAnalytics": { + "description": "Container group log analytics information.", + "$ref": "#/definitions/LogAnalytics" + } + } + }, + "LogAnalytics": { + "description": "Container group log analytics information.", + "type": "object", + "properties": { + "workspaceId": { + "description": "The workspace id for log analytics", + "type": "string" + }, + "workspaceKey": { + "description": "The workspace key for log analytics", + "type": "string", + "x-ms-secret": true + }, + "logType": { + "type": "string", + "description": "The log type to be used.", + "enum": [ + "ContainerInsights", + "ContainerInstanceLogs" + ], + "x-ms-enum": { + "name": "LogAnalyticsLogType", + "modelAsString": true + } + }, + "metadata": { + "type": "object", + "description": "Metadata for log analytics.", + "additionalProperties": { + "type": "string" + } + }, + "workspaceResourceId": { + "description": "The workspace resource id for log analytics", + "type": "string", + "x-ms-secret": true + } + }, + "required": [ + "workspaceId", + "workspaceKey" + ] + }, + "ContainerGroupSubnetId": { + "description": "Container group subnet information.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID of virtual network and subnet.", + "type": "string" + }, + "name": { + "description": "Friendly name for the subnet.", + "type": "string" + } + }, + "required": [ + "id" + ] + }, + "IpAddress": { + "description": "IP address for the container group.", + "type": "object", + "properties": { + "ports": { + "type": "array", + "description": "The list of ports exposed on the container group.", + "items": { + "$ref": "#/definitions/Port" + }, + "x-ms-identifiers": [ + "port" + ] + }, + "type": { + "type": "string", + "description": "Specifies if the IP is exposed to the public internet or private VNET.", + "enum": [ + "Public", + "Private" + ], + "x-ms-enum": { + "name": "ContainerGroupIpAddressType", + "modelAsString": true + } + }, + "ip": { + "type": "string", + "description": "The IP exposed to the public internet." + }, + "dnsNameLabel": { + "type": "string", + "description": "The Dns name label for the IP." + }, + "autoGeneratedDomainNameLabelScope": { + "type": "string", + "description": "The value representing the security enum. The 'Unsecure' value is the default value if not selected and means the object's domain name label is not secured against subdomain takeover. The 'TenantReuse' value is the default value if selected and means the object's domain name label can be reused within the same tenant. The 'SubscriptionReuse' value means the object's domain name label can be reused within the same subscription. The 'ResourceGroupReuse' value means the object's domain name label can be reused within the same resource group. The 'NoReuse' value means the object's domain name label cannot be reused within the same resource group, subscription, or tenant.", + "enum": [ + "Unsecure", + "TenantReuse", + "SubscriptionReuse", + "ResourceGroupReuse", + "Noreuse" + ], + "default": "Unsecure", + "x-ms-enum": { + "name": "dnsNameLabelReusePolicy", + "modelAsString": true + } + }, + "fqdn": { + "readOnly": true, + "type": "string", + "description": "The FQDN for the IP." + } + }, + "required": [ + "ports", + "type" + ] + }, + "Port": { + "description": "The port exposed on the container group.", + "type": "object", + "properties": { + "protocol": { + "type": "string", + "description": "The protocol associated with the port.", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "ContainerGroupNetworkProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "description": "The port number.", + "format": "int32" + } + }, + "required": [ + "port" + ] + }, + "ContainerPort": { + "description": "The port exposed on the container instance.", + "type": "object", + "properties": { + "protocol": { + "type": "string", + "description": "The protocol associated with the port.", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "ContainerNetworkProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port number exposed within the container group." + } + }, + "required": [ + "port" + ] + }, + "EnvironmentVariable": { + "description": "The environment variable to set within the container instance.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the environment variable." + }, + "value": { + "type": "string", + "description": "The value of the environment variable." + }, + "secureValue": { + "type": "string", + "description": "The value of the secure environment variable.", + "x-ms-secret": true + } + }, + "required": [ + "name" + ] + }, + "OperationListResult": { + "description": "The operation list response that contains all operations for Azure Container Instance service.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The list of operations." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of operations." + } + } + }, + "Operation": { + "description": "An operation for Azure Container Instance service.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "description": "The display information of the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The name of the provider of the operation.", + "type": "string" + }, + "resource": { + "type": "string", + "description": "The name of the resource type of the operation." + }, + "operation": { + "description": "The friendly name of the operation.", + "type": "string" + }, + "description": { + "description": "The description of the operation.", + "type": "string" + } + } + }, + "properties": { + "type": "object", + "description": "The additional properties.", + "x-ms-client-flatten": true + }, + "origin": { + "type": "string", + "description": "The intended executor of the operation.", + "enum": [ + "User", + "System" + ], + "x-ms-enum": { + "name": "ContainerInstanceOperationsOrigin", + "modelAsString": true + } + } + }, + "required": [ + "name", + "display" + ] + }, + "UsageListResult": { + "description": "The response containing the usage data", + "type": "object", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "description": "The usage data.", + "items": { + "$ref": "#/definitions/Usage" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "Usage": { + "description": "A single usage result", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Id of the usage result" + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "Unit of the usage result" + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The current usage of the resource" + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "type": "object", + "description": "The name object of the resource", + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource" + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource" + } + } + } + } + }, + "ContainerGroupListResult": { + "description": "The container group list response that contains the container group properties.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerGroup" + }, + "description": "The list of container groups." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of container groups." + } + } + }, + "Logs": { + "description": "The logs.", + "type": "object", + "properties": { + "content": { + "type": "string", + "description": "The content of the log." + } + } + }, + "ContainerExecRequest": { + "description": "The container exec request.", + "type": "object", + "properties": { + "command": { + "type": "string", + "description": "The command to be executed." + }, + "terminalSize": { + "type": "object", + "description": "The size of the terminal.", + "properties": { + "rows": { + "type": "integer", + "format": "int32", + "description": "The row size of the terminal" + }, + "cols": { + "type": "integer", + "format": "int32", + "description": "The column size of the terminal" + } + } + } + } + }, + "ContainerExecResponse": { + "description": "The information for the container exec command.", + "type": "object", + "properties": { + "webSocketUri": { + "type": "string", + "description": "The uri for the exec websocket." + }, + "password": { + "type": "string", + "description": "The password to start the exec command.", + "x-ms-secret": true + } + } + }, + "ContainerAttachResponse": { + "description": "The information for the output stream from container attach.", + "type": "object", + "properties": { + "webSocketUri": { + "type": "string", + "description": "The uri for the output stream from the attach." + }, + "password": { + "type": "string", + "description": "The password to the output stream from the attach. Send as an Authorization header value when connecting to the websocketUri.", + "x-ms-secret": true + } + } + }, + "HttpHeader": { + "description": "The HTTP header.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The header name." + }, + "value": { + "type": "string", + "description": "The header value." + } + } + }, + "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.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + }, + "zones": { + "description": "The zones for the container group.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "CachedImagesListResult": { + "description": "The response containing cached images.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/cachedImages" + }, + "x-ms-identifiers": [ + "image" + ], + "description": "The list of cached images." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of cached images." + } + } + }, + "cachedImages": { + "description": "The cached image and OS type.", + "type": "object", + "required": [ + "osType", + "image" + ], + "properties": { + "osType": { + "type": "string", + "description": "The OS type of the cached image." + }, + "image": { + "type": "string", + "description": "The cached image name." + } + } + }, + "CapabilitiesListResult": { + "description": "The response containing list of capabilities.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Capabilities" + }, + "x-ms-identifiers": [ + "resourceType", + "location" + ], + "description": "The list of capabilities." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of capabilities." + } + } + }, + "Capabilities": { + "description": "The regional capabilities.", + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The resource type that this capability describes." + }, + "osType": { + "type": "string", + "readOnly": true, + "description": "The OS type that this capability describes." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The resource location." + }, + "ipAddressType": { + "type": "string", + "readOnly": true, + "description": "The ip address type that this capability describes." + }, + "gpu": { + "type": "string", + "readOnly": true, + "description": "The GPU sku that this capability describes." + }, + "capabilities": { + "type": "object", + "readOnly": true, + "description": "The supported capabilities.", + "properties": { + "maxMemoryInGB": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed memory request in GB." + }, + "maxCpu": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed CPU request in cores." + }, + "maxGpuCount": { + "type": "number", + "readOnly": true, + "description": "The maximum allowed GPU count." + } + } + } + } + }, + "ContainerGroupSku": { + "description": "The container group SKU.", + "type": "string", + "enum": [ + "Standard", + "Dedicated", + "Confidential" + ], + "x-ms-enum": { + "name": "ContainerGroupSku", + "modelAsString": true + } + }, + "EncryptionProperties": { + "description": "The container group encryption properties.", + "type": "object", + "properties": { + "vaultBaseUrl": { + "description": "The keyvault base url.", + "type": "string" + }, + "keyName": { + "description": "The encryption key name.", + "type": "string" + }, + "keyVersion": { + "description": "The encryption key version.", + "type": "string" + }, + "identity": { + "type": "string", + "description": "The keyvault managed identity." + } + }, + "required": [ + "vaultBaseUrl", + "keyName", + "keyVersion" + ] + }, + "InitContainerDefinition": { + "description": "The init container definition.", + "type": "object", + "properties": { + "name": { + "description": "The name for the init container.", + "type": "string" + }, + "properties": { + "description": "The properties for the init container.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InitContainerPropertiesDefinition" + } + }, + "required": [ + "name", + "properties" + ] + }, + "InitContainerPropertiesDefinition": { + "description": "The init container definition properties.", + "type": "object", + "properties": { + "image": { + "description": "The image of the init container.", + "type": "string" + }, + "command": { + "description": "The command to execute within the init container in exec form.", + "type": "array", + "items": { + "type": "string" + } + }, + "environmentVariables": { + "description": "The environment variables to set in the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentVariable" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "instanceView": { + "description": "The instance view of the init container. Only valid in response.", + "readOnly": true, + "type": "object", + "properties": { + "restartCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of times that the init container has been restarted." + }, + "currentState": { + "readOnly": true, + "description": "The current state of the init container.", + "$ref": "#/definitions/ContainerState" + }, + "previousState": { + "readOnly": true, + "description": "The previous state of the init container.", + "$ref": "#/definitions/ContainerState" + }, + "events": { + "readOnly": true, + "description": "The events of the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "x-ms-identifiers": [ + "name", + "type" + ] + } + } + }, + "volumeMounts": { + "description": "The volume mounts available to the init container.", + "type": "array", + "items": { + "$ref": "#/definitions/VolumeMount" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "securityContext": { + "description": "The container security properties.", + "$ref": "#/definitions/SecurityContextDefinition" + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Container Instance service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Container Instance service." + }, + "NetworkDependenciesResponse": { + "description": "Response for network dependencies, always empty list.", + "type": "array", + "items": { + "type": "string" + } + }, + "ConfidentialComputeProperties": { + "description": "The properties for confidential container group", + "type": "object", + "properties": { + "ccePolicy": { + "type": "string", + "description": "The base64 encoded confidential compute enforcement policy" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "x-ms-parameter-location": "client" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The identifier for the physical azure location.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version", + "x-ms-parameter-location": "client" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ContainerGroupNameParameter": { + "name": "containerGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the container group.", + "x-ms-parameter-location": "method" + }, + "VirtualNetworkNameParameter": { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network.", + "x-ms-parameter-location": "method" + }, + "SubnetNameParameter": { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet.", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation Id.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/CachedImagesList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/CachedImagesList.json new file mode 100644 index 000000000000..ddc3207b60f4 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/CachedImagesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "westcentralus", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "osType": "Linux", + "image": "ubuntu:16.04" + }, + { + "osType": "Linux", + "image": "alpine:3.6" + }, + { + "osType": "Windows", + "image": "microsoft/nanoserver:10.0.14393.2485" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/CapabilitiesList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/CapabilitiesList.json new file mode 100644 index 000000000000..9bbdbe7194fe --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/CapabilitiesList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "westus", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "containerGroups", + "osType": "Linux", + "location": "West US", + "ipAddressType": "Public", + "gpu": "K80", + "capabilities": { + "maxMemoryInGB": 14, + "maxCpu": 4, + "maxGpuCount": 4 + } + }, + { + "resourceType": "containerGroups", + "osType": "Windows", + "location": "West US", + "ipAddressType": "Public", + "gpu": "None", + "capabilities": { + "maxMemoryInGB": 14, + "maxCpu": 4, + "maxGpuCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerAttach.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerAttach.json new file mode 100644 index 000000000000..f3c9cb70238f --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerAttach.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerName": "container1" + }, + "responses": { + "200": { + "body": { + "webSocketUri": "wss://web-socket-uri", + "password": "password" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerExec.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerExec.json new file mode 100644 index 000000000000..ec34b861e41c --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerExec.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerName": "container1", + "containerExecRequest": { + "command": "/bin/bash", + "terminalSize": { + "rows": 12, + "cols": 12 + } + } + }, + "responses": { + "200": { + "body": { + "webSocketUri": "wss://web-socket-uri", + "password": "password" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupCreateConfidential.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupCreateConfidential.json new file mode 100644 index 000000000000..20e44336b9dc --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupCreateConfidential.json @@ -0,0 +1,184 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "westeurope", + "properties": { + "containers": [ + { + "name": "accdemo", + "properties": { + "command": [], + "environmentVariables": [], + "image": "confiimage", + "ports": [ + { + "port": 8000 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "osType": "Linux", + "sku": "Confidential", + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Confidential", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "containers": [ + { + "name": "accdemo", + "properties": { + "image": "confiimage", + "command": [], + "ports": [ + { + "port": 8000 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "initContainers": [], + "imageRegistryCredentials": [], + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Running" + }, + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "westeurope" + } + }, + "201": { + "body": { + "properties": { + "sku": "Confidential", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "containers": [ + { + "name": "accdemo", + "properties": { + "image": "confiimage", + "command": [], + "ports": [ + { + "port": 8000 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + }, + "securityContext": { + "privileged": false, + "capabilities": { + "add": [ + "CAP_NET_ADMIN" + ] + } + } + } + } + ], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 8000 + } + ], + "type": "Public" + }, + "initContainers": [], + "imageRegistryCredentials": [], + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Running" + }, + "confidentialComputeProperties": { + "ccePolicy": "eyJhbGxvd19hbGwiOiB0cnVlLCAiY29udGFpbmVycyI6IHsibGVuZ3RoIjogMCwgImVsZW1lbnRzIjogbnVsbH19" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "westeurope" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupCreateOrUpdateStandbyPool.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupCreateOrUpdateStandbyPool.json new file mode 100644 index 000000000000..085e2cea968f --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupCreateOrUpdateStandbyPool.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "west us", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "configMap": { + "keyValuePairs": { + "Newkey": "value" + } + } + } + } + ], + "containerGroupProfile": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/democgp", + "revision": 1 + }, + "standbyPoolProfile": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.StandbyPool/standbyContainerGroupPools/demopool" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": true, + "provisioningState": "Succeeded", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "configMap": { + "keyValuePairs": { + "Newkey": "value" + } + }, + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "imageRegistryCredentials": [], + "containerGroupProfile": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/democgp", + "revision": 1 + }, + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Running" + } + }, + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": true, + "provisioningState": "Succeeded", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "configMap": { + "keyValuePairs": { + "Newkey": "value" + } + }, + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "imageRegistryCredentials": [], + "containerGroupProfile": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroupProfiles/democgp", + "revision": 1 + }, + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Running" + } + }, + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupEncryptionProperties.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupEncryptionProperties.json new file mode 100644 index 000000000000..8467e64e2862 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupEncryptionProperties.json @@ -0,0 +1,194 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "eastus2", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": {} + } + }, + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net", + "keyName": "test-key", + "keyVersion": "", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": false, + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net/", + "keyName": "test-key", + "keyVersion": "", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + }, + "provisioningState": "Pending", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Pending" + } + }, + "identity": { + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": { + "principalId": "", + "clientId": "" + } + }, + "tenantId": "", + "type": "UserAssigned" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": false, + "encryptionProperties": { + "vaultBaseUrl": "https://testkeyvault.vault.azure.net/", + "keyName": "test-key", + "keyVersion": "key version", + "identity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity" + }, + "provisioningState": "Running", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public" + }, + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Pending" + } + }, + "identity": { + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/container-group-identity": { + "principalId": "", + "clientId": "" + } + }, + "tenantId": "", + "type": "UserAssigned" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupExtensions.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupExtensions.json new file mode 100644 index 000000000000..9a0c24e8b93d --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupExtensions.json @@ -0,0 +1,210 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "eastus2", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + } + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Private" + }, + "osType": "Linux", + "subnetIds": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet" + } + ], + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + }, + "protectedSettings": { + "kubeConfig": "" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": false, + "provisioningState": "Pending", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ], + "imageRegistryCredentials": [], + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Pending" + }, + "subnetIds": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": false, + "provisioningState": "Pending", + "containers": [ + { + "name": "demo1", + "properties": { + "image": "nginx", + "command": [], + "ports": [ + { + "port": 80 + } + ], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1.5, + "cpu": 1.0 + } + } + } + } + ], + "initContainers": [], + "extensions": [ + { + "name": "kube-proxy", + "properties": { + "extensionType": "kube-proxy", + "version": "1.0", + "settings": { + "clusterCidr": "10.240.0.0/16", + "kubeVersion": "v1.9.10" + } + } + }, + { + "name": "vk-realtime-metrics", + "properties": { + "extensionType": "realtime-metrics", + "version": "1.0" + } + } + ], + "imageRegistryCredentials": [], + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Running" + }, + "subnetIds": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-rg-vnet/subnets/test-subnet" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/test-rg/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus2" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupUsage.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupUsage.json new file mode 100644 index 000000000000..a03657bca6d5 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupUsage.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "westcentralus", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 1, + "limit": 2000, + "name": { + "value": "ContainerGroups", + "localizedValue": "Container Groups" + } + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsCreateOrUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsCreateOrUpdate.json new file mode 100644 index 000000000000..27afd2512667 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsCreateOrUpdate.json @@ -0,0 +1,318 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "zones": [ + "1" + ], + "containerGroup": { + "location": "west us", + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": {} + } + }, + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid", + "workspaceKey": "workspaceKey", + "logType": "ContainerInsights", + "metadata": { + "test-key": "test-metadata-value" + }, + "workspaceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg/providers/microsoft.operationalinsights/workspaces/workspace" + } + }, + "subnetIds": [ + { + "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('subnetName'))]" + } + ], + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ], + "searchDomains": "cluster.local svc.cluster.local", + "options": "ndots:2" + }, + "imageRegistryCredentials": [], + "ipAddress": { + "ports": [ + { + "protocol": "TCP", + "port": 80 + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure" + }, + "osType": "Linux", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName", + "storageAccountKey": "accountKey" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": { + "secretKey1": "SecretValue1InBase64", + "secretKey2": "SecretValue2InBase64" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "diagnostics": { + "logAnalytics": { + "workspaceId": "workspaceid" + } + }, + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ], + "searchDomains": "cluster.local svc.cluster.local", + "options": "ndots:2" + }, + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure", + "fqdn": "dnsnamelabel1.azure-container.io" + }, + "osType": "Linux", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "dnsConfig": { + "nameServers": [ + "1.1.1.1" + ] + }, + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "autoGeneratedDomainNameLabelScope": "Unsecure", + "fqdn": "dnsnamelabel1.azure-container.io" + }, + "osType": "Linux", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsCreatePriority.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsCreatePriority.json new file mode 100644 index 000000000000..c6f3d9569a5d --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsCreatePriority.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerGroup": { + "properties": { + "sku": "Standard", + "containers": [ + { + "name": "test-container-001", + "properties": { + "image": "alpine:latest", + "command": [ + "/bin/sh", + "-c", + "sleep 10" + ], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + } + ], + "restartPolicy": "Never", + "osType": "Linux", + "priority": "Spot" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "containers": [ + { + "name": "test-container-001", + "properties": { + "image": "alpine:latest", + "command": [ + "/bin/sh", + "-c", + "sleep 10" + ], + "ports": [], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + } + ], + "initContainers": [], + "restartPolicy": "Never", + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Succeeded" + }, + "priority": "Spot" + }, + "id": "/subscriptions/subId/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus" + } + }, + "201": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": false, + "provisioningState": "Created", + "containers": [ + { + "name": "test-container-001", + "properties": { + "image": "alpine:latest", + "command": [ + "/bin/sh", + "-c", + "sleep 10" + ], + "ports": [], + "environmentVariables": [], + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + } + ], + "initContainers": [], + "restartPolicy": "Never", + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Created" + }, + "priority": "Spot" + }, + "id": "/subscriptions/subId/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsDelete.json new file mode 100644 index 000000000000..0eb2d6b600c5 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsDelete.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/locations/location/operations/operationId?api-version=apiVersion" + } + }, + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGetPriority.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGetPriority.json new file mode 100644 index 000000000000..f73660bdea3c --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGetPriority.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": "Standard", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "containers": [ + { + "name": "test-container-001", + "properties": { + "image": "alpine:latest", + "command": [ + "/bin/sh", + "-c", + "sleep 10" + ], + "ports": [], + "environmentVariables": [], + "instanceView": { + "restartCount": 0, + "currentState": { + "state": "Terminated", + "startTime": "2022-11-11T19:33:44.217Z", + "exitCode": 0, + "finishTime": "2022-11-11T19:33:55.565Z", + "detailStatus": "Completed" + }, + "events": [ + { + "count": 2, + "firstTimestamp": "2022-11-11T19:28:22Z", + "lastTimestamp": "2022-11-11T19:32:09Z", + "name": "Pulling", + "message": "pulling image \"alpine@sha256:1304f174557314a7ed9eddb4eab12fed12cb0cd9809e4c28f29af86979a3c870\"", + "type": "Normal" + }, + { + "count": 2, + "firstTimestamp": "2022-11-11T19:32:08Z", + "lastTimestamp": "2022-11-11T19:32:38Z", + "name": "Pulled", + "message": "Successfully pulled image \"alpine@sha256:1304f174557314a7ed9eddb4eab12fed12cb0cd9809e4c28f29af86979a3c870\"", + "type": "Normal" + }, + { + "count": 1, + "firstTimestamp": "2022-11-11T19:33:44Z", + "lastTimestamp": "2022-11-11T19:33:44Z", + "name": "Started", + "message": "Started container", + "type": "Normal" + } + ] + }, + "resources": { + "requests": { + "memoryInGB": 1, + "cpu": 1 + } + } + } + } + ], + "initContainers": [], + "restartPolicy": "Never", + "osType": "Linux", + "instanceView": { + "events": [], + "state": "Succeeded" + }, + "priority": "Spot" + }, + "id": "/subscriptions/subId/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "location": "eastus" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGet_Failed.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGet_Failed.json new file mode 100644 index 000000000000..5ff099014ec8 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGet_Failed.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "instanceView": { + "restartCount": 0, + "currentState": { + "state": "Waiting", + "startTime": "2017-08-08T00:09:10Z", + "detailStatus": "" + }, + "events": [ + { + "count": 1, + "firstTimestamp": "2017-08-08T00:09:01Z", + "lastTimestamp": "2017-08-08T00:09:01Z", + "message": "pulling image \"nginx\"", + "name": "Pulling", + "type": "Normal" + }, + { + "count": 1, + "firstTimestamp": "2017-08-08T00:09:10Z", + "lastTimestamp": "2017-08-08T00:09:10Z", + "message": "Successfully pulled image \"nginx\"", + "name": "Pulled", + "type": "Normal" + } + ] + }, + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "instanceView": { + "events": [ + { + "count": 1, + "firstTimestamp": "2017-10-08T00:19:10Z", + "lastTimestamp": "2017-10-08T00:19:10Z", + "message": "Output: mount error(2): Permission denied", + "name": "FailedMount", + "type": "Normal" + } + ], + "state": "Pending" + }, + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "isCreatedFromStandbyPool": false, + "provisioningState": "Failed", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGet_Succeeded.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGet_Succeeded.json new file mode 100644 index 000000000000..f2d852a5abf9 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsGet_Succeeded.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsList.json new file mode 100644 index 000000000000..ce9a903fbd5d --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsList.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "instanceView": { + "restartCount": 0, + "currentState": { + "state": "Running", + "startTime": "2017-10-17T17:27:21Z", + "detailStatus": "" + }, + "events": [] + }, + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsListByResourceGroup.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsListByResourceGroup.json new file mode 100644 index 000000000000..ef1d03323719 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsListByResourceGroup.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "demo", + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "zones": [ + "1" + ], + "name": "demo1", + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "mountPath": "/mnt/volume1", + "name": "volume1", + "readOnly": false + } + ] + } + } + ], + "imageRegistryCredentials": [ + { + "server": "azcloudconsoleregistry.azurecr.io", + "username": "azcloudconsoleregistry" + } + ], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public" + }, + "osType": "Linux", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "volumes": [ + { + "azureFile": { + "readOnly": false, + "shareName": "share1", + "storageAccountName": "storage1" + }, + "name": "volume1" + } + ] + }, + "type": "Microsoft.ContainerInstance/containerGroups" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsRestart.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsRestart.json new file mode 100644 index 000000000000..54427e59496a --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsRestart.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsStart.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsStart.json new file mode 100644 index 000000000000..21c6cba5a581 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsStart.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/locations/location/operations/operationId?api-version=apiVersion" + } + }, + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsStop.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsStop.json new file mode 100644 index 000000000000..54427e59496a --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsStop.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsUpdate.json new file mode 100644 index 000000000000..7cc8f8cd6da0 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerGroupsUpdate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demoResource", + "containerGroupName": "demo1", + "Resource": { + "tags": { + "tag1key": "tag1Value", + "tag2key": "tag2Value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/demoResource/providers/Microsoft.ContainerInstance/containerGroups/demo1", + "location": "WestUs", + "name": "demo1", + "type": "Microsoft.ContainerInstance/containerGroups", + "tags": { + "tag1key": "tag1Value", + "tag2key": "tag2Value" + }, + "properties": { + "containers": [ + { + "name": "demo1", + "properties": { + "command": [], + "environmentVariables": [], + "image": "nginx", + "ports": [ + { + "port": 80 + } + ], + "resources": { + "requests": { + "cpu": 1, + "memoryInGB": 1.5 + } + }, + "volumeMounts": [ + { + "name": "volume1", + "mountPath": "/mnt/volume1", + "readOnly": false + }, + { + "name": "volume2", + "mountPath": "/mnt/volume2", + "readOnly": false + }, + { + "name": "volume3", + "mountPath": "/mnt/volume3", + "readOnly": true + } + ] + } + } + ], + "imageRegistryCredentials": [], + "ipAddress": { + "ip": "10.0.0.1", + "ports": [ + { + "port": 80, + "protocol": "TCP" + } + ], + "type": "Public", + "dnsNameLabel": "dnsnamelabel1", + "fqdn": "dnsnamelabel1.azure-container.io" + }, + "osType": "Linux", + "isCreatedFromStandbyPool": false, + "provisioningState": "Succeeded", + "volumes": [ + { + "name": "volume1", + "azureFile": { + "shareName": "shareName", + "storageAccountName": "accountName" + } + }, + { + "name": "volume2", + "emptyDir": {} + }, + { + "name": "volume3", + "secret": {} + } + ] + } + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerListLogs.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerListLogs.json new file mode 100644 index 000000000000..893324e87a3d --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/ContainerListLogs.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "containerGroupName": "demo1", + "containerName": "container1", + "tail": 10 + }, + "responses": { + "200": { + "body": { + "content": "log content" + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/OperationsList.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/OperationsList.json new file mode 100644 index 000000000000..14c7cf61df99 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/OperationsList.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ContainerInstance/containerGroups/read", + "display": { + "provider": "Microsoft Container Instance", + "resource": "Container Group", + "operation": "Get Container Groups", + "description": "Get all container goups." + }, + "origin": "User" + } + ] + } + } + } +} diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/SubnetServiceAssociationLinkDelete.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/SubnetServiceAssociationLinkDelete.json new file mode 100644 index 000000000000..dd958037e751 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/preview/2024-05-01-preview/examples/SubnetServiceAssociationLinkDelete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2024-05-01-preview", + "resourceGroupName": "demo", + "virtualNetworkName": "demo2", + "subnetName": "demo3" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/locations/location/operations/operationId?api-version=apiVersion" + } + }, + "204": {} + } +} diff --git a/specification/containerinstance/resource-manager/readme.md b/specification/containerinstance/resource-manager/readme.md index 4b07ceb2e8a4..6c4d309167c1 100644 --- a/specification/containerinstance/resource-manager/readme.md +++ b/specification/containerinstance/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the ContainerInstance API. ``` yaml openapi-type: arm -tag: package-2023-05 +tag: package-preview-2024-05 +``` + +### Tag: package-preview-2024-05 + +These settings apply only when `--tag=package-preview-2024-05` is specified on the command line. + +```yaml $(tag) == 'package-preview-2024-05' +input-file: + - Microsoft.ContainerInstance/preview/2024-05-01-preview/containerInstance.json ``` ### Tag: package-2023-05 @@ -198,6 +207,13 @@ directive: - suppress: UniqueResourcePaths from: containerInstance.json reason: false positive, see https://github.com/Azure/azure-openapi-validator/issues/176 +suppressions: + - code: AvoidAdditionalProperties + reason: Using additionalProperties type as the object is user-defined and not subject to any validations at RP level. + from: + - containerInstance.json + where: + - $.definitions.ConfigMap.properties.keyValuePairs ``` --- From c28640102e994513192bc17863eec5968b0057d5 Mon Sep 17 00:00:00 2001 From: iscai-msft <43154838+iscai-msft@users.noreply.github.com> Date: Wed, 26 Jun 2024 18:31:16 -0400 Subject: [PATCH 24/52] use body root to specify which parameter models we want to keep grouped (#29483) * add ops.ResourceCollectionAction KeepModel * add ops.ResourceAction KeepModel * add ops.LongRunningResourceAction KeepModel * other templates * switch over to BodyParameter * format * use valueof in BodyParameter template, add doc * remove unnecessary documentation * add doc to BodyParameter template * add extra specs * fix formatting of BodyParameter * format * format * format * suppress doc warning * move body parameter to template * add default body parameter doc * default bodyparam doc to body parameter * fix validation errors * remove bodyparameter from codetransparency * try for openai * remove incorrect alias bodyparameter * don't spread CreateLivenessWithVerifySessionContent * fix breaking change in easm * add readme to openai assistants * update readme * add tag to readme * fix json file reference * add json files to list --------- Co-authored-by: iscai-msft Co-authored-by: Mark Cowlishaw --- specification/ai/Face/models.common.tsp | 11 + specification/ai/Face/routes.session.tsp | 4 +- .../model.common.shared.tsp | 11 + .../route.oncophenotype.tsp | 2 +- .../route.patienttimeline.tsp | 2 +- .../route.trialmatcher.tsp | 2 +- .../OpenAI.Assistants/assistants/routes.tsp | 4 +- .../ai/OpenAI.Assistants/common/models.tsp | 11 + .../ai/OpenAI.Assistants/runs/routes.tsp | 2 +- .../ai/OpenAI.Assistants/threads/routes.tsp | 8 +- .../vector_stores/routes.tsp | 2 +- .../Face/preview/v1.1-preview.1/Face.json | 2 + .../assistants_generated.json | 36 +- .../assistants_generated.json | 37 +- .../assistants_generated.yaml | 34 +- .../assistants_generated.yaml | 35 +- specification/ai/data-plane/readme.md | 78 +++ .../models/completions/common.tsp | 2 + .../models/embeddings_create.tsp | 11 + .../routes/audio_transcription.tsp | 4 +- .../routes/audio_translation.tsp | 4 +- .../OpenAI.Inference/routes/completions.tsp | 2 +- .../OpenAI.Inference/routes/embeddings.tsp | 2 +- .../OpenAI.Inference/routes/images.tsp | 4 +- .../preview/2023-06-01-preview/generated.json | 3 + .../preview/2023-07-01-preview/generated.json | 3 + .../preview/2024-02-15-preview/generated.json | 503 +++++++++------ .../preview/2024-03-01-preview/generated.json | 503 +++++++++------ .../preview/2024-04-01-preview/generated.json | 604 +++++++++++------- .../preview/2024-05-01-preview/generated.json | 604 +++++++++++------- .../stable/2022-12-01/generated.json | 2 + .../stable/2023-05-15/generated.json | 2 + .../Communication.Messages/models.tsp | 11 + .../Communication.Messages/routes.tsp | 2 +- .../communicationservicesmessages.json | 1 + .../DeveloperSigning/main.tsp | 13 +- .../azure.developer.signing.json | 1 + .../apis/common.tsp | 11 + .../apis/location.tsp | 2 +- .../apis/network.tsp | 2 +- .../apis/number.tsp | 4 +- .../apis/simswap.tsp | 4 +- .../preview/2024-02-09-preview/openapi.json | 6 + .../models.tsp | 11 + .../routes.tsp | 6 +- .../stable/2023-09-01/purviewdatamap.json | 3 + specification/riskiq/Easm/models.tsp | 11 + specification/riskiq/Easm/routes.tsp | 22 +- .../preview/2023-03-01-preview/easm.json | 5 + .../preview/2024-03-01-preview/easm.json | 11 + .../VoiceServices.Provisioning/main.tsp | 25 +- .../preview/2024-02-29-preview/swagger.json | 3 + 52 files changed, 1656 insertions(+), 1032 deletions(-) create mode 100644 specification/ai/data-plane/readme.md diff --git a/specification/ai/Face/models.common.tsp b/specification/ai/Face/models.common.tsp index 4eb0c1e70ae0..e99fe295e601 100644 --- a/specification/ai/Face/models.common.tsp +++ b/specification/ai/Face/models.common.tsp @@ -294,3 +294,14 @@ model FaceError { } model FaceErrorResponse is Azure.Core.Foundations.ErrorResponseBase; + +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; diff --git a/specification/ai/Face/routes.session.tsp b/specification/ai/Face/routes.session.tsp index 70b492cdb31b..4c5c59085f75 100644 --- a/specification/ai/Face/routes.session.tsp +++ b/specification/ai/Face/routes.session.tsp @@ -69,7 +69,7 @@ interface LivenessSessionOperations { @returnsDoc(SessionCreationSuccess) createLivenessSession is FaceResourceCreateWithServiceProvidedName< LivenessSession, - CreateLivenessSessionContent, + BodyParameter, CreateLivenessSessionResult >; @@ -118,7 +118,7 @@ interface LivenessSessionOperations { @sharedRoute createLivenessWithVerifySession is FaceResourceCreateWithServiceProvidedName< LivenessWithVerifySession, - CreateLivenessSessionContent, + BodyParameter, CreateLivenessWithVerifySessionResult >; diff --git a/specification/ai/HealthInsights/HealthInsights.Common/model.common.shared.tsp b/specification/ai/HealthInsights/HealthInsights.Common/model.common.shared.tsp index a316c356a25f..e7829bde8c95 100644 --- a/specification/ai/HealthInsights/HealthInsights.Common/model.common.shared.tsp +++ b/specification/ai/HealthInsights/HealthInsights.Common/model.common.shared.tsp @@ -229,3 +229,14 @@ model ClinicalCodedElement { @doc("A value associated with the code within the given clinical coding system.") value?: string; } + +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; diff --git a/specification/ai/HealthInsights/HealthInsights.OncoPhenotype/route.oncophenotype.tsp b/specification/ai/HealthInsights/HealthInsights.OncoPhenotype/route.oncophenotype.tsp index f60da4e7484a..3bcfdf2454b3 100644 --- a/specification/ai/HealthInsights/HealthInsights.OncoPhenotype/route.oncophenotype.tsp +++ b/specification/ai/HealthInsights/HealthInsights.OncoPhenotype/route.oncophenotype.tsp @@ -19,7 +19,7 @@ interface OncoPhenotype { @doc("Gets the status and details of the Onco Phenotype job.") @get @route("/onco-phenotype/jobs/{id}") - getJob is HealthInsightsLongRunningPollOperation; + getJob is HealthInsightsLongRunningPollOperation>; #suppress "@azure-tools/typespec-azure-core/long-running-polling-operation-required" "Polling through operation-location" #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "There is no long-running RPC template in Azure.Core" diff --git a/specification/ai/HealthInsights/HealthInsights.PatientTimeline/route.patienttimeline.tsp b/specification/ai/HealthInsights/HealthInsights.PatientTimeline/route.patienttimeline.tsp index 1514a76dbe88..bbb9c165dd4e 100644 --- a/specification/ai/HealthInsights/HealthInsights.PatientTimeline/route.patienttimeline.tsp +++ b/specification/ai/HealthInsights/HealthInsights.PatientTimeline/route.patienttimeline.tsp @@ -19,7 +19,7 @@ interface PatientTimeline { @doc("Gets the status and details of the Patient Timeline job.") @get @route("/patient-timeline/jobs/{id}") - getJob is HealthInsightsLongRunningPollOperation; + getJob is HealthInsightsLongRunningPollOperation>; #suppress "@azure-tools/typespec-azure-core/long-running-polling-operation-required" "Polling through operation-location" #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "There is no long-running RPC template in Azure.Core" diff --git a/specification/ai/HealthInsights/HealthInsights.TrialMatcher/route.trialmatcher.tsp b/specification/ai/HealthInsights/HealthInsights.TrialMatcher/route.trialmatcher.tsp index 7f31371b01c9..4e627e65e67c 100644 --- a/specification/ai/HealthInsights/HealthInsights.TrialMatcher/route.trialmatcher.tsp +++ b/specification/ai/HealthInsights/HealthInsights.TrialMatcher/route.trialmatcher.tsp @@ -18,7 +18,7 @@ interface TrialMatcher { @doc("Gets the status and details of the Trial Matcher job.") @get @route("/trial-matcher/jobs/{id}") - getJob is HealthInsightsLongRunningPollOperation; + getJob is HealthInsightsLongRunningPollOperation>; #suppress "@azure-tools/typespec-azure-core/long-running-polling-operation-required" "Polling through operation-location" #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "There is no long-running RPC template in Azure.Core" diff --git a/specification/ai/OpenAI.Assistants/assistants/routes.tsp b/specification/ai/OpenAI.Assistants/assistants/routes.tsp index cdefb9fd6aa5..e8746c12abf6 100644 --- a/specification/ai/OpenAI.Assistants/assistants/routes.tsp +++ b/specification/ai/OpenAI.Assistants/assistants/routes.tsp @@ -20,7 +20,7 @@ namespace Azure.AI.OpenAI.Assistants; @post @added(ServiceApiVersions.v2024_02_15_preview) @route("/assistants") -op createAssistant(...AssistantCreationOptions): Assistant; +op createAssistant(...BodyParameter): Assistant; /** * Gets a list of assistants that were previously created. @@ -63,7 +63,7 @@ op getAssistant(@path assistantId: string): Assistant; @post @route("/assistants/{assistantId}") @added(ServiceApiVersions.v2024_02_15_preview) -op updateAssistant(...UpdateAssistantOptions): Assistant; +op updateAssistant(...BodyParameter): Assistant; /** * Deletes an assistant. diff --git a/specification/ai/OpenAI.Assistants/common/models.tsp b/specification/ai/OpenAI.Assistants/common/models.tsp index 5c446a1d1d42..85fb2d648611 100644 --- a/specification/ai/OpenAI.Assistants/common/models.tsp +++ b/specification/ai/OpenAI.Assistants/common/models.tsp @@ -148,3 +148,14 @@ union ApiResponseFormat { /** Using `json_object` format will limit the usage of ToolCall to only functions. */ jsonObject: "json_object", } + +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; diff --git a/specification/ai/OpenAI.Assistants/runs/routes.tsp b/specification/ai/OpenAI.Assistants/runs/routes.tsp index c65c2d07fa06..45847257a2e7 100644 --- a/specification/ai/OpenAI.Assistants/runs/routes.tsp +++ b/specification/ai/OpenAI.Assistants/runs/routes.tsp @@ -139,4 +139,4 @@ op cancelRun(@path threadId: string, @path runId: string): ThreadRun; @route("/threads/runs") @doc("Creates a new assistant thread and immediately starts a run using that new thread.") @added(ServiceApiVersions.v2024_02_15_preview) -op createThreadAndRun(...CreateAndRunThreadOptions): ThreadRun; +op createThreadAndRun(...BodyParameter): ThreadRun; diff --git a/specification/ai/OpenAI.Assistants/threads/routes.tsp b/specification/ai/OpenAI.Assistants/threads/routes.tsp index 53dbc7fa16de..2f06aacfb89d 100644 --- a/specification/ai/OpenAI.Assistants/threads/routes.tsp +++ b/specification/ai/OpenAI.Assistants/threads/routes.tsp @@ -20,7 +20,9 @@ namespace Azure.AI.OpenAI.Assistants; @post @added(ServiceApiVersions.v2024_02_15_preview) @route("/threads") -op createThread(...AssistantThreadCreationOptions): AssistantThread; +op createThread( + ...BodyParameter, +): AssistantThread; // list threads? @@ -52,7 +54,9 @@ op getThread(@path threadId: string): AssistantThread; @post @route("/threads/{threadId}") @added(ServiceApiVersions.v2024_02_15_preview) -op updateThread(...UpdateAssistantThreadOptions): AssistantThread; +op updateThread( + ...BodyParameter, +): AssistantThread; /** * Deletes an existing thread. diff --git a/specification/ai/OpenAI.Assistants/vector_stores/routes.tsp b/specification/ai/OpenAI.Assistants/vector_stores/routes.tsp index a01dae88426f..da0395283ad6 100644 --- a/specification/ai/OpenAI.Assistants/vector_stores/routes.tsp +++ b/specification/ai/OpenAI.Assistants/vector_stores/routes.tsp @@ -34,7 +34,7 @@ op listVectorStores( @post @route("/vector_stores") @added(ServiceApiVersions.v2024_05_01_preview) -op createVectorStore(...VectorStoreOptions): VectorStore; +op createVectorStore(...BodyParameter): VectorStore; /** * Returns the vector store object matching the specified ID. diff --git a/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json b/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json index 7f17cd879a5f..f5f77b5d0d1b 100644 --- a/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json +++ b/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json @@ -408,6 +408,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CreateLivenessSessionContent" @@ -5846,6 +5847,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CreateLivenessSessionContent" diff --git a/specification/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-02-15-preview/assistants_generated.json b/specification/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-02-15-preview/assistants_generated.json index e1a20fe445e2..6e871cf81b9c 100644 --- a/specification/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-02-15-preview/assistants_generated.json +++ b/specification/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-02-15-preview/assistants_generated.json @@ -174,6 +174,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/AssistantCreationOptions" @@ -217,11 +218,16 @@ "description": "Modifies an existing assistant.", "parameters": [ { - "$ref": "#/parameters/UpdateAssistantOptions.assistantId" + "name": "assistantId", + "in": "path", + "description": "The ID of the assistant to modify.", + "required": true, + "type": "string" }, { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/UpdateAssistantOptions" @@ -460,6 +466,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/AssistantThreadCreationOptions" @@ -503,11 +510,16 @@ "description": "Modifies an existing thread.", "parameters": [ { - "$ref": "#/parameters/UpdateAssistantThreadOptions.threadId" + "name": "threadId", + "in": "path", + "description": "The ID of the thread to modify.", + "required": true, + "type": "string" }, { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/UpdateAssistantThreadOptions" @@ -1235,6 +1247,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CreateAndRunThreadOptions" @@ -3181,22 +3194,5 @@ } } }, - "parameters": { - "UpdateAssistantOptions.assistantId": { - "name": "assistantId", - "in": "path", - "description": "The ID of the assistant to modify.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "UpdateAssistantThreadOptions.threadId": { - "name": "threadId", - "in": "path", - "description": "The ID of the thread to modify.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - } + "parameters": {} } diff --git a/specification/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json b/specification/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json index b0fe2a911183..5fcda9a56c31 100644 --- a/specification/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json +++ b/specification/ai/data-plane/OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json @@ -174,6 +174,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/AssistantCreationOptions" @@ -217,11 +218,16 @@ "description": "Modifies an existing assistant.", "parameters": [ { - "$ref": "#/parameters/UpdateAssistantOptions.assistantId" + "name": "assistantId", + "in": "path", + "description": "The ID of the assistant to modify.", + "required": true, + "type": "string" }, { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/UpdateAssistantOptions" @@ -496,6 +502,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/AssistantThreadCreationOptions" @@ -539,11 +546,16 @@ "description": "Modifies an existing thread.", "parameters": [ { - "$ref": "#/parameters/UpdateAssistantThreadOptions.threadId" + "name": "threadId", + "in": "path", + "description": "The ID of the thread to modify.", + "required": true, + "type": "string" }, { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/UpdateAssistantThreadOptions" @@ -1287,6 +1299,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CreateAndRunThreadOptions" @@ -1418,6 +1431,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/VectorStoreOptions" @@ -5172,22 +5186,5 @@ } } }, - "parameters": { - "UpdateAssistantOptions.assistantId": { - "name": "assistantId", - "in": "path", - "description": "The ID of the assistant to modify.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "UpdateAssistantThreadOptions.threadId": { - "name": "threadId", - "in": "path", - "description": "The ID of the thread to modify.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - } + "parameters": {} } diff --git a/specification/ai/data-plane/OpenAI.Assistants/OpenApiV3/2024-02-15-preview/assistants_generated.yaml b/specification/ai/data-plane/OpenAI.Assistants/OpenApiV3/2024-02-15-preview/assistants_generated.yaml index 5d101eb1cb50..50ff2a97ab68 100644 --- a/specification/ai/data-plane/OpenAI.Assistants/OpenApiV3/2024-02-15-preview/assistants_generated.yaml +++ b/specification/ai/data-plane/OpenAI.Assistants/OpenApiV3/2024-02-15-preview/assistants_generated.yaml @@ -18,6 +18,7 @@ paths: schema: $ref: '#/components/schemas/Assistant' requestBody: + description: Body parameter. required: true content: application/json: @@ -110,7 +111,12 @@ paths: operationId: updateAssistant description: Modifies an existing assistant. parameters: - - $ref: '#/components/parameters/UpdateAssistantOptions.assistantId' + - name: assistantId + in: path + required: true + description: The ID of the assistant to modify. + schema: + type: string responses: '200': description: The updated assistant instance. @@ -119,6 +125,7 @@ paths: schema: $ref: '#/components/schemas/Assistant' requestBody: + description: Body parameter. required: true content: application/json: @@ -257,6 +264,7 @@ paths: schema: $ref: '#/components/schemas/AssistantThread' requestBody: + description: Body parameter. required: true content: application/json: @@ -275,6 +283,7 @@ paths: schema: $ref: '#/components/schemas/ThreadRun' requestBody: + description: Body parameter. required: true content: application/json: @@ -302,7 +311,12 @@ paths: operationId: updateThread description: Modifies an existing thread. parameters: - - $ref: '#/components/parameters/UpdateAssistantThreadOptions.threadId' + - name: threadId + in: path + required: true + description: The ID of the thread to modify. + schema: + type: string responses: '200': description: Information about the modified thread. @@ -311,6 +325,7 @@ paths: schema: $ref: '#/components/schemas/AssistantThread' requestBody: + description: Body parameter. required: true content: application/json: @@ -817,21 +832,6 @@ security: - OAuth2Auth: - https://cognitiveservices.azure.com/.default components: - parameters: - UpdateAssistantOptions.assistantId: - name: assistantId - in: path - required: true - description: The ID of the assistant to modify. - schema: - type: string - UpdateAssistantThreadOptions.threadId: - name: threadId - in: path - required: true - description: The ID of the thread to modify. - schema: - type: string schemas: Assistant: type: object diff --git a/specification/ai/data-plane/OpenAI.Assistants/OpenApiV3/2024-05-01-preview/assistants_generated.yaml b/specification/ai/data-plane/OpenAI.Assistants/OpenApiV3/2024-05-01-preview/assistants_generated.yaml index bb72844194ac..e7a6f9691f97 100644 --- a/specification/ai/data-plane/OpenAI.Assistants/OpenApiV3/2024-05-01-preview/assistants_generated.yaml +++ b/specification/ai/data-plane/OpenAI.Assistants/OpenApiV3/2024-05-01-preview/assistants_generated.yaml @@ -18,6 +18,7 @@ paths: schema: $ref: '#/components/schemas/Assistant' requestBody: + description: Body parameter. required: true content: application/json: @@ -110,7 +111,12 @@ paths: operationId: updateAssistant description: Modifies an existing assistant. parameters: - - $ref: '#/components/parameters/UpdateAssistantOptions.assistantId' + - name: assistantId + in: path + required: true + description: The ID of the assistant to modify. + schema: + type: string responses: '200': description: The updated assistant instance. @@ -119,6 +125,7 @@ paths: schema: $ref: '#/components/schemas/Assistant' requestBody: + description: Body parameter. required: true content: application/json: @@ -257,6 +264,7 @@ paths: schema: $ref: '#/components/schemas/AssistantThread' requestBody: + description: Body parameter. required: true content: application/json: @@ -275,6 +283,7 @@ paths: schema: $ref: '#/components/schemas/ThreadRun' requestBody: + description: Body parameter. required: true content: application/json: @@ -302,7 +311,12 @@ paths: operationId: updateThread description: Modifies an existing thread. parameters: - - $ref: '#/components/parameters/UpdateAssistantThreadOptions.threadId' + - name: threadId + in: path + required: true + description: The ID of the thread to modify. + schema: + type: string responses: '200': description: Information about the modified thread. @@ -311,6 +325,7 @@ paths: schema: $ref: '#/components/schemas/AssistantThread' requestBody: + description: Body parameter. required: true content: application/json: @@ -903,6 +918,7 @@ paths: schema: $ref: '#/components/schemas/VectorStore' requestBody: + description: Body parameter. required: true content: application/json: @@ -1293,21 +1309,6 @@ security: - OAuth2Auth: - https://cognitiveservices.azure.com/.default components: - parameters: - UpdateAssistantOptions.assistantId: - name: assistantId - in: path - required: true - description: The ID of the assistant to modify. - schema: - type: string - UpdateAssistantThreadOptions.threadId: - name: threadId - in: path - required: true - description: The ID of the thread to modify. - schema: - type: string schemas: ApiResponseFormat: anyOf: diff --git a/specification/ai/data-plane/readme.md b/specification/ai/data-plane/readme.md new file mode 100644 index 000000000000..7abc736f3437 --- /dev/null +++ b/specification/ai/data-plane/readme.md @@ -0,0 +1,78 @@ +# OpenAI + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for OpenAI. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the [OpenAI]. + +```yaml +openapi-type: data-plane +tag: package-2023-11-06-beta +``` + +### Tag: package-2023-11-06-beta + +These settings apply only when `--tag=package-2023-11-06-beta` is specified on the command line. + +```yaml $(tag) == 'package-2023-11-06-beta' +input-file: + - OpenAI.Assistants/OpenApiV2/stable/2023-11-06-beta/assistants_generated.json + - OpenAI.Assistants/OpenApiV2/stable/2023-11-06-beta/examples/create_assistant.json +``` + +### Tag: package-2023-02-15-preview + +These settings apply only when `--tag=package-2023-02-15-preview` is specified on the command line. + +```yaml $(tag) == 'package-2023-02-15-preview' +input-file: + - OpenAI.Assistants/OpenApiV2/preview/2023-02-15-preview/assistants_generated.json +``` + +### Tag: package-2024-02-15-preview + +These settings apply only when `--tag=package-2024-02-15-preview` is specified on the command line. + +```yaml $(tag) == 'package-2024-02-15-preview' +input-file: + - OpenAI.Assistants/OpenApiV2/preview/2024-02-15-preview/assistants_generated.json +``` + +### Tag: package-2024-05-01-preview + +These settings apply only when `--tag=package-2024-05-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2024-05-01-preview' +input-file: + - OpenAI.Assistants/OpenApiV2/preview/2024-05-01-preview/assistants_generated.json +``` + +### Suppression + +``` yaml +directive: + - suppress: XMS_EXAMPLE_NOTFOUND_ERROR + from: assistants_generated.json + reason: No existing examples. + - suppress: UNREFERENCED_JSON_FILE + from: +``` diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/common.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/common.tsp index 3afebd183971..219388cff428 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/common.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/common.tsp @@ -1,7 +1,9 @@ import "@typespec/versioning"; +import "@typespec/http"; import "@azure-tools/typespec-azure-core"; using TypeSpec.Versioning; +using Http; namespace Azure.OpenAI; diff --git a/specification/cognitiveservices/OpenAI.Inference/models/embeddings_create.tsp b/specification/cognitiveservices/OpenAI.Inference/models/embeddings_create.tsp index eddaa1cb4b5a..e698a2f1d70f 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/embeddings_create.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/embeddings_create.tsp @@ -102,3 +102,14 @@ model EmbeddingsUsage { @encodedName("application/json", "total_tokens") totalTokens: int32; } + +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/audio_transcription.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/audio_transcription.tsp index 6a3fab3d6e9c..265ba7cedba0 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/audio_transcription.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/audio_transcription.tsp @@ -28,7 +28,7 @@ namespace Azure.OpenAI; @sharedRoute op getAudioTranscriptionAsPlainText is Azure.Core.ResourceAction< Deployment, - AudioTranscriptionOptions, // response_format must be one of: text, srt, vtt + BodyParameter, AudioTextResponse, MultipartFormDataRequestHeadersTraits & TextPlainResponseHeadersTraits >; @@ -44,7 +44,7 @@ op getAudioTranscriptionAsPlainText is Azure.Core.ResourceAction< @sharedRoute op getAudioTranscriptionAsResponseObject is Azure.Core.ResourceAction< Deployment, - AudioTranscriptionOptions, // response_format must be unspecified (json) or one of: json, verbose_json + BodyParameter, // response_format must be unspecified (json) or one of: json, verbose_json AudioTranscription, MultipartFormDataRequestHeadersTraits >; diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/audio_translation.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/audio_translation.tsp index 0f36637e5964..18cf4a1d1c11 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/audio_translation.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/audio_translation.tsp @@ -27,7 +27,7 @@ namespace Azure.OpenAI; @sharedRoute op getAudioTranslationAsPlainText is Azure.Core.ResourceAction< Deployment, - AudioTranslationOptions, // response_format must be one of: text, srt, vtt + BodyParameter, AudioTextResponse, MultipartFormDataRequestHeadersTraits & TextPlainResponseHeadersTraits >; @@ -42,7 +42,7 @@ op getAudioTranslationAsPlainText is Azure.Core.ResourceAction< @sharedRoute op getAudioTranslationAsResponseObject is Azure.Core.ResourceAction< Deployment, - AudioTranslationOptions, // response_format must be unspecified (json) or one of: json, verbose_json + BodyParameter, // response_format must be unspecified (json) or one of: json, verbose_json AudioTranslation, MultipartFormDataRequestHeadersTraits >; diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/completions.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/completions.tsp index 284b0842ca5d..3b138d588587 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/completions.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/completions.tsp @@ -23,7 +23,7 @@ namespace Azure.OpenAI; @action("completions") //@convenientAPI(true) op getCompletions is Azure.Core.ResourceAction< Deployment, - CompletionsOptions, + BodyParameter, Completions >; diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/embeddings.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/embeddings.tsp index 20afaa954d04..ecb49b09e4b1 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/embeddings.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/embeddings.tsp @@ -18,6 +18,6 @@ namespace Azure.OpenAI; @action("embeddings") //@convenientAPI(true) op getEmbeddings is Azure.Core.ResourceAction< Deployment, - EmbeddingsOptions, + BodyParameter, Embeddings >; diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/images.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/images.tsp index 0f09b3f185bc..b0fcec522f40 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/images.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/images.tsp @@ -20,7 +20,7 @@ namespace Azure.OpenAI; @action("images/generations") op getImageGenerations is Azure.Core.ResourceAction< Deployment, - ImageGenerationOptions, + BodyParameter, ImageGenerations >; @@ -54,7 +54,7 @@ op getAzureBatchImageGenerationOperationStatus is RpcOperation< } ) op beginAzureBatchImageGeneration is OaiLongRunningRpcOperation< - ImageGenerationOptions, + BodyParameter, BatchImageGenerationOperationResponse, BatchImageGenerationOperationResponse >; diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/generated.json index cb97b483ca84..08007691cc3a 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/generated.json @@ -128,6 +128,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CompletionsOptions" @@ -179,6 +180,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/EmbeddingsOptions" @@ -223,6 +225,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ImageGenerationOptions" diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json index 9230cd3ea16a..dfd0dcdce0b0 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json @@ -128,6 +128,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CompletionsOptions" @@ -179,6 +180,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/EmbeddingsOptions" @@ -223,6 +225,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ImageGenerationOptions" diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/generated.json index 43de460be08c..0fb1618e5c07 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/generated.json @@ -137,25 +137,93 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.language" + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string" } ], "responses": { @@ -208,22 +276,86 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranslationOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranslationOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranslationOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string" } ], "responses": { @@ -343,6 +475,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CompletionsOptions" @@ -394,6 +527,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/EmbeddingsOptions" @@ -445,6 +579,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ImageGenerationOptions" @@ -499,25 +634,93 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.language" + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string" } ], "responses": { @@ -566,22 +769,86 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranslationOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranslationOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranslationOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string" } ], "responses": { @@ -4014,190 +4281,6 @@ } }, "parameters": { - "AudioTranscriptionOptions.file": { - "name": "file", - "in": "formData", - "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", - "required": true, - "type": "file", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.filename": { - "name": "filename", - "in": "formData", - "description": "The optional filename or descriptive identifier to associate with with the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.language": { - "name": "language", - "in": "formData", - "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.model": { - "name": "model", - "in": "formData", - "description": "The model to use for this transcription request.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.prompt": { - "name": "prompt", - "in": "formData", - "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.responseFormat": { - "name": "response_format", - "in": "formData", - "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", - "required": false, - "type": "string", - "enum": [ - "json", - "verbose_json", - "text", - "srt", - "vtt" - ], - "x-ms-enum": { - "name": "AudioTranscriptionFormat", - "modelAsString": true, - "values": [ - { - "name": "json", - "value": "json", - "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." - }, - { - "name": "verbose_json", - "value": "verbose_json", - "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." - }, - { - "name": "text", - "value": "text", - "description": "Use a response body that is plain text containing the raw, unannotated transcription." - }, - { - "name": "srt", - "value": "srt", - "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." - }, - { - "name": "vtt", - "value": "vtt", - "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." - } - ] - }, - "x-ms-parameter-location": "method", - "x-ms-client-name": "responseFormat" - }, - "AudioTranscriptionOptions.temperature": { - "name": "temperature", - "in": "formData", - "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", - "required": false, - "type": "number", - "format": "float", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.file": { - "name": "file", - "in": "formData", - "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", - "required": true, - "type": "file", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.filename": { - "name": "filename", - "in": "formData", - "description": "The optional filename or descriptive identifier to associate with with the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.model": { - "name": "model", - "in": "formData", - "description": "The model to use for this translation request.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.prompt": { - "name": "prompt", - "in": "formData", - "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.responseFormat": { - "name": "response_format", - "in": "formData", - "description": "The requested format of the translation response data, which will influence the content and detail of the result.", - "required": false, - "type": "string", - "enum": [ - "json", - "verbose_json", - "text", - "srt", - "vtt" - ], - "x-ms-enum": { - "name": "AudioTranslationFormat", - "modelAsString": true, - "values": [ - { - "name": "json", - "value": "json", - "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." - }, - { - "name": "verbose_json", - "value": "verbose_json", - "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." - }, - { - "name": "text", - "value": "text", - "description": "Use a response body that is plain text containing the raw, unannotated translation." - }, - { - "name": "srt", - "value": "srt", - "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." - }, - { - "name": "vtt", - "value": "vtt", - "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." - } - ] - }, - "x-ms-parameter-location": "method", - "x-ms-client-name": "responseFormat" - }, - "AudioTranslationOptions.temperature": { - "name": "temperature", - "in": "formData", - "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", - "required": false, - "type": "number", - "format": "float", - "x-ms-parameter-location": "method" - }, "Azure.Core.Foundations.ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-03-01-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-03-01-preview/generated.json index 3586f7590bf8..50544e3dc1fc 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-03-01-preview/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-03-01-preview/generated.json @@ -137,25 +137,93 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.language" + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string" } ], "responses": { @@ -208,22 +276,86 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranslationOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranslationOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranslationOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string" } ], "responses": { @@ -343,6 +475,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CompletionsOptions" @@ -394,6 +527,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/EmbeddingsOptions" @@ -445,6 +579,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ImageGenerationOptions" @@ -499,25 +634,93 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.language" + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string" } ], "responses": { @@ -566,22 +769,86 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranslationOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranslationOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranslationOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string" } ], "responses": { @@ -4045,190 +4312,6 @@ } }, "parameters": { - "AudioTranscriptionOptions.file": { - "name": "file", - "in": "formData", - "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", - "required": true, - "type": "file", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.filename": { - "name": "filename", - "in": "formData", - "description": "The optional filename or descriptive identifier to associate with with the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.language": { - "name": "language", - "in": "formData", - "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.model": { - "name": "model", - "in": "formData", - "description": "The model to use for this transcription request.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.prompt": { - "name": "prompt", - "in": "formData", - "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.responseFormat": { - "name": "response_format", - "in": "formData", - "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", - "required": false, - "type": "string", - "enum": [ - "json", - "verbose_json", - "text", - "srt", - "vtt" - ], - "x-ms-enum": { - "name": "AudioTranscriptionFormat", - "modelAsString": true, - "values": [ - { - "name": "json", - "value": "json", - "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." - }, - { - "name": "verbose_json", - "value": "verbose_json", - "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." - }, - { - "name": "text", - "value": "text", - "description": "Use a response body that is plain text containing the raw, unannotated transcription." - }, - { - "name": "srt", - "value": "srt", - "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." - }, - { - "name": "vtt", - "value": "vtt", - "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." - } - ] - }, - "x-ms-parameter-location": "method", - "x-ms-client-name": "responseFormat" - }, - "AudioTranscriptionOptions.temperature": { - "name": "temperature", - "in": "formData", - "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", - "required": false, - "type": "number", - "format": "float", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.file": { - "name": "file", - "in": "formData", - "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", - "required": true, - "type": "file", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.filename": { - "name": "filename", - "in": "formData", - "description": "The optional filename or descriptive identifier to associate with with the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.model": { - "name": "model", - "in": "formData", - "description": "The model to use for this translation request.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.prompt": { - "name": "prompt", - "in": "formData", - "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.responseFormat": { - "name": "response_format", - "in": "formData", - "description": "The requested format of the translation response data, which will influence the content and detail of the result.", - "required": false, - "type": "string", - "enum": [ - "json", - "verbose_json", - "text", - "srt", - "vtt" - ], - "x-ms-enum": { - "name": "AudioTranslationFormat", - "modelAsString": true, - "values": [ - { - "name": "json", - "value": "json", - "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." - }, - { - "name": "verbose_json", - "value": "verbose_json", - "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." - }, - { - "name": "text", - "value": "text", - "description": "Use a response body that is plain text containing the raw, unannotated translation." - }, - { - "name": "srt", - "value": "srt", - "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." - }, - { - "name": "vtt", - "value": "vtt", - "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." - } - ] - }, - "x-ms-parameter-location": "method", - "x-ms-client-name": "responseFormat" - }, - "AudioTranslationOptions.temperature": { - "name": "temperature", - "in": "formData", - "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", - "required": false, - "type": "number", - "format": "float", - "x-ms-parameter-location": "method" - }, "Azure.Core.Foundations.ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-04-01-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-04-01-preview/generated.json index 7a140362995b..1e2249218c04 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-04-01-preview/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-04-01-preview/generated.json @@ -137,28 +137,127 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.language" + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.timestampGranularities" + "name": "timestamp_granularities", + "in": "formData", + "description": "The timestamp granularities to populate for this transcription.\n`response_format` must be set `verbose_json` to use timestamp granularities.\nEither or both of these options are supported: `word`, or `segment`.\nNote: There is no additional latency for segment timestamps, but generating word timestamps incurs additional latency.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "word", + "segment" + ], + "x-ms-enum": { + "name": "AudioTranscriptionTimestampGranularity", + "modelAsString": true, + "values": [ + { + "name": "word", + "value": "word", + "description": "Indicates that responses should include timing information about each transcribed word. Note that generating word\ntimestamp information will incur additional response latency." + }, + { + "name": "segment", + "value": "segment", + "description": "Indicates that responses should include timing and other information about each transcribed audio segment. Audio\nsegment timestamp information does not incur any additional latency." + } + ] + } + }, + "default": [ + "segment" + ], + "x-ms-client-name": "timestampGranularities" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string" } ], "responses": { @@ -211,22 +310,86 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranslationOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranslationOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranslationOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string" } ], "responses": { @@ -346,6 +509,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CompletionsOptions" @@ -397,6 +561,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/EmbeddingsOptions" @@ -448,6 +613,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ImageGenerationOptions" @@ -502,28 +668,127 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.language" + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.timestampGranularities" + "name": "timestamp_granularities", + "in": "formData", + "description": "The timestamp granularities to populate for this transcription.\n`response_format` must be set `verbose_json` to use timestamp granularities.\nEither or both of these options are supported: `word`, or `segment`.\nNote: There is no additional latency for segment timestamps, but generating word timestamps incurs additional latency.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "word", + "segment" + ], + "x-ms-enum": { + "name": "AudioTranscriptionTimestampGranularity", + "modelAsString": true, + "values": [ + { + "name": "word", + "value": "word", + "description": "Indicates that responses should include timing information about each transcribed word. Note that generating word\ntimestamp information will incur additional response latency." + }, + { + "name": "segment", + "value": "segment", + "description": "Indicates that responses should include timing and other information about each transcribed audio segment. Audio\nsegment timestamp information does not incur any additional latency." + } + ] + } + }, + "default": [ + "segment" + ], + "x-ms-client-name": "timestampGranularities" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string" } ], "responses": { @@ -572,22 +837,86 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranslationOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranslationOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranslationOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string" } ], "responses": { @@ -4151,225 +4480,6 @@ } }, "parameters": { - "AudioTranscriptionOptions.file": { - "name": "file", - "in": "formData", - "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", - "required": true, - "type": "file", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.filename": { - "name": "filename", - "in": "formData", - "description": "The optional filename or descriptive identifier to associate with with the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.language": { - "name": "language", - "in": "formData", - "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.model": { - "name": "model", - "in": "formData", - "description": "The model to use for this transcription request.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.prompt": { - "name": "prompt", - "in": "formData", - "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.responseFormat": { - "name": "response_format", - "in": "formData", - "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", - "required": false, - "type": "string", - "enum": [ - "json", - "verbose_json", - "text", - "srt", - "vtt" - ], - "x-ms-enum": { - "name": "AudioTranscriptionFormat", - "modelAsString": true, - "values": [ - { - "name": "json", - "value": "json", - "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." - }, - { - "name": "verbose_json", - "value": "verbose_json", - "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." - }, - { - "name": "text", - "value": "text", - "description": "Use a response body that is plain text containing the raw, unannotated transcription." - }, - { - "name": "srt", - "value": "srt", - "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." - }, - { - "name": "vtt", - "value": "vtt", - "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." - } - ] - }, - "x-ms-parameter-location": "method", - "x-ms-client-name": "responseFormat" - }, - "AudioTranscriptionOptions.temperature": { - "name": "temperature", - "in": "formData", - "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", - "required": false, - "type": "number", - "format": "float", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.timestampGranularities": { - "name": "timestamp_granularities", - "in": "formData", - "description": "The timestamp granularities to populate for this transcription.\n`response_format` must be set `verbose_json` to use timestamp granularities.\nEither or both of these options are supported: `word`, or `segment`.\nNote: There is no additional latency for segment timestamps, but generating word timestamps incurs additional latency.", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "word", - "segment" - ], - "x-ms-enum": { - "name": "AudioTranscriptionTimestampGranularity", - "modelAsString": true, - "values": [ - { - "name": "word", - "value": "word", - "description": "Indicates that responses should include timing information about each transcribed word. Note that generating word\ntimestamp information will incur additional response latency." - }, - { - "name": "segment", - "value": "segment", - "description": "Indicates that responses should include timing and other information about each transcribed audio segment. Audio\nsegment timestamp information does not incur any additional latency." - } - ] - } - }, - "default": [ - "segment" - ], - "x-ms-parameter-location": "method", - "x-ms-client-name": "timestampGranularities" - }, - "AudioTranslationOptions.file": { - "name": "file", - "in": "formData", - "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", - "required": true, - "type": "file", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.filename": { - "name": "filename", - "in": "formData", - "description": "The optional filename or descriptive identifier to associate with with the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.model": { - "name": "model", - "in": "formData", - "description": "The model to use for this translation request.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.prompt": { - "name": "prompt", - "in": "formData", - "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.responseFormat": { - "name": "response_format", - "in": "formData", - "description": "The requested format of the translation response data, which will influence the content and detail of the result.", - "required": false, - "type": "string", - "enum": [ - "json", - "verbose_json", - "text", - "srt", - "vtt" - ], - "x-ms-enum": { - "name": "AudioTranslationFormat", - "modelAsString": true, - "values": [ - { - "name": "json", - "value": "json", - "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." - }, - { - "name": "verbose_json", - "value": "verbose_json", - "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." - }, - { - "name": "text", - "value": "text", - "description": "Use a response body that is plain text containing the raw, unannotated translation." - }, - { - "name": "srt", - "value": "srt", - "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." - }, - { - "name": "vtt", - "value": "vtt", - "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." - } - ] - }, - "x-ms-parameter-location": "method", - "x-ms-client-name": "responseFormat" - }, - "AudioTranslationOptions.temperature": { - "name": "temperature", - "in": "formData", - "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", - "required": false, - "type": "number", - "format": "float", - "x-ms-parameter-location": "method" - }, "Azure.Core.Foundations.ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-05-01-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-05-01-preview/generated.json index 24ed1b370093..8557c34830a2 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-05-01-preview/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-05-01-preview/generated.json @@ -137,28 +137,127 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.language" + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.timestampGranularities" + "name": "timestamp_granularities", + "in": "formData", + "description": "The timestamp granularities to populate for this transcription.\n`response_format` must be set `verbose_json` to use timestamp granularities.\nEither or both of these options are supported: `word`, or `segment`.\nNote: There is no additional latency for segment timestamps, but generating word timestamps incurs additional latency.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "word", + "segment" + ], + "x-ms-enum": { + "name": "AudioTranscriptionTimestampGranularity", + "modelAsString": true, + "values": [ + { + "name": "word", + "value": "word", + "description": "Indicates that responses should include timing information about each transcribed word. Note that generating word\ntimestamp information will incur additional response latency." + }, + { + "name": "segment", + "value": "segment", + "description": "Indicates that responses should include timing and other information about each transcribed audio segment. Audio\nsegment timestamp information does not incur any additional latency." + } + ] + } + }, + "default": [ + "segment" + ], + "x-ms-client-name": "timestampGranularities" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string" } ], "responses": { @@ -211,22 +310,86 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranslationOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranslationOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranslationOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string" } ], "responses": { @@ -346,6 +509,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CompletionsOptions" @@ -397,6 +561,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/EmbeddingsOptions" @@ -448,6 +613,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ImageGenerationOptions" @@ -502,28 +668,127 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.language" + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.timestampGranularities" + "name": "timestamp_granularities", + "in": "formData", + "description": "The timestamp granularities to populate for this transcription.\n`response_format` must be set `verbose_json` to use timestamp granularities.\nEither or both of these options are supported: `word`, or `segment`.\nNote: There is no additional latency for segment timestamps, but generating word timestamps incurs additional latency.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "word", + "segment" + ], + "x-ms-enum": { + "name": "AudioTranscriptionTimestampGranularity", + "modelAsString": true, + "values": [ + { + "name": "word", + "value": "word", + "description": "Indicates that responses should include timing information about each transcribed word. Note that generating word\ntimestamp information will incur additional response latency." + }, + { + "name": "segment", + "value": "segment", + "description": "Indicates that responses should include timing and other information about each transcribed audio segment. Audio\nsegment timestamp information does not incur any additional latency." + } + ] + } + }, + "default": [ + "segment" + ], + "x-ms-client-name": "timestampGranularities" }, { - "$ref": "#/parameters/AudioTranscriptionOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string" } ], "responses": { @@ -572,22 +837,86 @@ "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.file" + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file" }, { - "$ref": "#/parameters/AudioTranslationOptions.filename" + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-client-name": "responseFormat" }, { - "$ref": "#/parameters/AudioTranslationOptions.prompt" + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/AudioTranslationOptions.temperature" + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float" }, { - "$ref": "#/parameters/AudioTranslationOptions.model" + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string" } ], "responses": { @@ -4468,225 +4797,6 @@ } }, "parameters": { - "AudioTranscriptionOptions.file": { - "name": "file", - "in": "formData", - "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", - "required": true, - "type": "file", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.filename": { - "name": "filename", - "in": "formData", - "description": "The optional filename or descriptive identifier to associate with with the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.language": { - "name": "language", - "in": "formData", - "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.model": { - "name": "model", - "in": "formData", - "description": "The model to use for this transcription request.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.prompt": { - "name": "prompt", - "in": "formData", - "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.responseFormat": { - "name": "response_format", - "in": "formData", - "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", - "required": false, - "type": "string", - "enum": [ - "json", - "verbose_json", - "text", - "srt", - "vtt" - ], - "x-ms-enum": { - "name": "AudioTranscriptionFormat", - "modelAsString": true, - "values": [ - { - "name": "json", - "value": "json", - "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." - }, - { - "name": "verbose_json", - "value": "verbose_json", - "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." - }, - { - "name": "text", - "value": "text", - "description": "Use a response body that is plain text containing the raw, unannotated transcription." - }, - { - "name": "srt", - "value": "srt", - "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." - }, - { - "name": "vtt", - "value": "vtt", - "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." - } - ] - }, - "x-ms-parameter-location": "method", - "x-ms-client-name": "responseFormat" - }, - "AudioTranscriptionOptions.temperature": { - "name": "temperature", - "in": "formData", - "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", - "required": false, - "type": "number", - "format": "float", - "x-ms-parameter-location": "method" - }, - "AudioTranscriptionOptions.timestampGranularities": { - "name": "timestamp_granularities", - "in": "formData", - "description": "The timestamp granularities to populate for this transcription.\n`response_format` must be set `verbose_json` to use timestamp granularities.\nEither or both of these options are supported: `word`, or `segment`.\nNote: There is no additional latency for segment timestamps, but generating word timestamps incurs additional latency.", - "required": false, - "type": "array", - "items": { - "type": "string", - "enum": [ - "word", - "segment" - ], - "x-ms-enum": { - "name": "AudioTranscriptionTimestampGranularity", - "modelAsString": true, - "values": [ - { - "name": "word", - "value": "word", - "description": "Indicates that responses should include timing information about each transcribed word. Note that generating word\ntimestamp information will incur additional response latency." - }, - { - "name": "segment", - "value": "segment", - "description": "Indicates that responses should include timing and other information about each transcribed audio segment. Audio\nsegment timestamp information does not incur any additional latency." - } - ] - } - }, - "default": [ - "segment" - ], - "x-ms-parameter-location": "method", - "x-ms-client-name": "timestampGranularities" - }, - "AudioTranslationOptions.file": { - "name": "file", - "in": "formData", - "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", - "required": true, - "type": "file", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.filename": { - "name": "filename", - "in": "formData", - "description": "The optional filename or descriptive identifier to associate with with the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.model": { - "name": "model", - "in": "formData", - "description": "The model to use for this translation request.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.prompt": { - "name": "prompt", - "in": "formData", - "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", - "required": false, - "type": "string", - "x-ms-parameter-location": "method" - }, - "AudioTranslationOptions.responseFormat": { - "name": "response_format", - "in": "formData", - "description": "The requested format of the translation response data, which will influence the content and detail of the result.", - "required": false, - "type": "string", - "enum": [ - "json", - "verbose_json", - "text", - "srt", - "vtt" - ], - "x-ms-enum": { - "name": "AudioTranslationFormat", - "modelAsString": true, - "values": [ - { - "name": "json", - "value": "json", - "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." - }, - { - "name": "verbose_json", - "value": "verbose_json", - "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." - }, - { - "name": "text", - "value": "text", - "description": "Use a response body that is plain text containing the raw, unannotated translation." - }, - { - "name": "srt", - "value": "srt", - "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." - }, - { - "name": "vtt", - "value": "vtt", - "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." - } - ] - }, - "x-ms-parameter-location": "method", - "x-ms-client-name": "responseFormat" - }, - "AudioTranslationOptions.temperature": { - "name": "temperature", - "in": "formData", - "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", - "required": false, - "type": "number", - "format": "float", - "x-ms-parameter-location": "method" - }, "Azure.Core.Foundations.ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2022-12-01/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2022-12-01/generated.json index b55dcf7f754c..39a5f276c4a8 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2022-12-01/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2022-12-01/generated.json @@ -77,6 +77,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CompletionsOptions" @@ -128,6 +129,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/EmbeddingsOptions" diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2023-05-15/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2023-05-15/generated.json index 4025b89cae3a..bf3f9152ea8b 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2023-05-15/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2023-05-15/generated.json @@ -128,6 +128,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/CompletionsOptions" @@ -179,6 +180,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/EmbeddingsOptions" diff --git a/specification/communication/Communication.Messages/models.tsp b/specification/communication/Communication.Messages/models.tsp index deb3876a0910..4949f3b23047 100644 --- a/specification/communication/Communication.Messages/models.tsp +++ b/specification/communication/Communication.Messages/models.tsp @@ -374,3 +374,14 @@ enum Versions { @useDependency(Azure.Core.Versions.v1_0_Preview_2) c2024_02_01: "2024-02-01", } + +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; diff --git a/specification/communication/Communication.Messages/routes.tsp b/specification/communication/Communication.Messages/routes.tsp index 95dede298d0a..a2c5d85987a4 100644 --- a/specification/communication/Communication.Messages/routes.tsp +++ b/specification/communication/Communication.Messages/routes.tsp @@ -35,7 +35,7 @@ interface NotificationMessagesOperations { @doc("Sends a notification message from Business to User.") send is Operations.ResourceCollectionAction< Notifications, - NotificationContent, + BodyParameter, AcceptedResponse & SendMessageResult >; } diff --git a/specification/communication/data-plane/Messages/stable/2024-02-01/communicationservicesmessages.json b/specification/communication/data-plane/Messages/stable/2024-02-01/communicationservicesmessages.json index 10f7cd1b04da..ec91ed70c2ed 100644 --- a/specification/communication/data-plane/Messages/stable/2024-02-01/communicationservicesmessages.json +++ b/specification/communication/data-plane/Messages/stable/2024-02-01/communicationservicesmessages.json @@ -164,6 +164,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/NotificationContent" diff --git a/specification/developersigning/DeveloperSigning/main.tsp b/specification/developersigning/DeveloperSigning/main.tsp index 89c0df419a51..167bd84ccdc7 100644 --- a/specification/developersigning/DeveloperSigning/main.tsp +++ b/specification/developersigning/DeveloperSigning/main.tsp @@ -68,7 +68,7 @@ interface CertificateProfileOperations { @pollingOperation(CertificateProfileOperations.getSigningStatus) sign is StandardResourceOperations.LongRunningResourceAction< CertificateProfileName, - SigningPayloadOptions, + BodyParameter, SignResult, Foundations.ErrorResponse, SigningRequestHeadersTraits @@ -188,6 +188,17 @@ model BytesBody { contentType: ContentType; } +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; + alias SigningRequestHeadersTraits = Azure.Core.Traits.RequestHeadersTrait<{ @doc("An optional client version.") @header diff --git a/specification/developersigning/data-plane/Azure.Developer.Signing/preview/2023-06-15-preview/azure.developer.signing.json b/specification/developersigning/data-plane/Azure.Developer.Signing/preview/2023-06-15-preview/azure.developer.signing.json index 167577681423..3ad206e9823f 100644 --- a/specification/developersigning/data-plane/Azure.Developer.Signing/preview/2023-06-15-preview/azure.developer.signing.json +++ b/specification/developersigning/data-plane/Azure.Developer.Signing/preview/2023-06-15-preview/azure.developer.signing.json @@ -93,6 +93,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/SigningPayloadOptions" diff --git a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/common.tsp b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/common.tsp index daf2d047610f..3393e203af29 100644 --- a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/common.tsp +++ b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/common.tsp @@ -104,3 +104,14 @@ model Ipv6Address { @doc("User equipment port.") port: int32; } + +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; diff --git a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/location.tsp b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/location.tsp index 2fe865cf1574..c90f5b3e63f9 100644 --- a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/location.tsp +++ b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/location.tsp @@ -13,7 +13,7 @@ interface DeviceLocation { @doc("Verifies whether a device is within a specified location area, defined as an accuracy (radius) around a point, specified by longitude and latitude.") verify is Operations.ResourceAction< DeviceLocationEndpoint, - DeviceLocationVerificationContent, + BodyParameter, DeviceLocationVerificationResult >; } diff --git a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/network.tsp b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/network.tsp index 48faea42e171..47bb8931bd9d 100644 --- a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/network.tsp +++ b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/network.tsp @@ -14,7 +14,7 @@ interface DeviceNetwork { @doc("Retrieves the network a given device is on. Returns network in a networkCode format that can be used for other APIs.") retrieve is Operations.ResourceAction< DeviceNetworkRetrievalEndpoint, - NetworkIdentifier, + BodyParameter, NetworkRetrievalResult >; } diff --git a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/number.tsp b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/number.tsp index 550e6d3d4477..c781676a7113 100644 --- a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/number.tsp +++ b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/number.tsp @@ -29,7 +29,7 @@ interface NumberVerification { @action("verify") verifyWithoutCode is Operations.ResourceAction< NumberVerificationEndpoint, - NumberVerificationWithoutCodeContent, + BodyParameter, TypeSpec.Http.Response<302> & {}, TraitOverride, NumberVerificationResult >; } diff --git a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/simswap.tsp b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/simswap.tsp index c6c717e9b1b1..c1b76c601aad 100644 --- a/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/simswap.tsp +++ b/specification/programmableconnectivity/Azure.ProgrammableConnectivity/apis/simswap.tsp @@ -14,14 +14,14 @@ interface SimSwap { @doc("Provides timestamp of latest SIM swap") retrieve is Operations.ResourceAction< SimSwapEndpoint, - SimSwapRetrievalContent, + BodyParameter, SimSwapRetrievalResult >; @doc("Verifies if a SIM swap has been performed during a past period (defined in the request with 'maxAgeHours' attribute). Returns 'True' if a SIM swap has occured.") verify is Operations.ResourceAction< SimSwapEndpoint, - SimSwapVerificationContent, + BodyParameter, SimSwapVerificationResult >; } diff --git a/specification/programmableconnectivity/data-plane/Azure.ProgrammableConnectivity/preview/2024-02-09-preview/openapi.json b/specification/programmableconnectivity/data-plane/Azure.ProgrammableConnectivity/preview/2024-02-09-preview/openapi.json index 1f674e941505..4c09ff5a23a7 100644 --- a/specification/programmableconnectivity/data-plane/Azure.ProgrammableConnectivity/preview/2024-02-09-preview/openapi.json +++ b/specification/programmableconnectivity/data-plane/Azure.ProgrammableConnectivity/preview/2024-02-09-preview/openapi.json @@ -68,6 +68,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DeviceLocationVerificationContent" @@ -130,6 +131,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/NetworkIdentifier" @@ -192,6 +194,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/NumberVerificationWithoutCodeContent" @@ -256,6 +259,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/SimSwapRetrievalContent" @@ -318,6 +322,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/SimSwapVerificationContent" @@ -382,6 +387,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/NumberVerificationWithCodeContent" diff --git a/specification/purview/Azure.Analytics.Purview.DataMap/models.tsp b/specification/purview/Azure.Analytics.Purview.DataMap/models.tsp index dc511d8f89e4..854809ea17d1 100644 --- a/specification/purview/Azure.Analytics.Purview.DataMap/models.tsp +++ b/specification/purview/Azure.Analytics.Purview.DataMap/models.tsp @@ -1983,3 +1983,14 @@ model AtlasTypeDefHeader { @doc("The name of the type definition.") name?: string; } + +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; diff --git a/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp b/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp index e7ddc9558184..7dd2a7fb5645 100644 --- a/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp +++ b/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp @@ -1619,7 +1619,7 @@ interface Discovery { @route("/search/query") @post query is Azure.Core.Foundations.Operation< - QueryOptions, + BodyParameter, QueryResult, {}, AtlasErrorResponse @@ -1630,7 +1630,7 @@ interface Discovery { @route("/search/suggest") @post suggest is Azure.Core.Foundations.Operation< - SuggestOptions, + BodyParameter, SuggestResult, {}, AtlasErrorResponse @@ -1641,7 +1641,7 @@ interface Discovery { @route("/search/autocomplete") @post autoComplete is Azure.Core.Foundations.Operation< - AutoCompleteOptions, + BodyParameter, AutoCompleteResult, {}, AtlasErrorResponse diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json index f2e6eb6c6382..2d8ab19b2b35 100644 --- a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json @@ -4266,6 +4266,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/AutoCompleteOptions" @@ -4304,6 +4305,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/QueryOptions" @@ -4402,6 +4404,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/SuggestOptions" diff --git a/specification/riskiq/Easm/models.tsp b/specification/riskiq/Easm/models.tsp index 74f37c48bd0b..8550fb724269 100644 --- a/specification/riskiq/Easm/models.tsp +++ b/specification/riskiq/Easm/models.tsp @@ -2155,3 +2155,14 @@ model DiscoGroupSummaryResult { @doc("The name that can be used for display purposes.") displayName: string; } + +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; diff --git a/specification/riskiq/Easm/routes.tsp b/specification/riskiq/Easm/routes.tsp index c787851abd12..f8220b541bfb 100644 --- a/specification/riskiq/Easm/routes.tsp +++ b/specification/riskiq/Easm/routes.tsp @@ -41,7 +41,7 @@ interface Assets { @Versioning.added(Versions.v2024_03_01_preview) getAssetsExport is Operations.ResourceCollectionAction< AssetResource, - AssetsExportRequest, + BodyParameter, Task, AssetsExportTrait >; @@ -61,7 +61,7 @@ interface Assets { @Versioning.added(Versions.v2024_03_01_preview) getDeltaDetails is Operations.ResourceCollectionAction< AssetResource, - DeltaDetailsRequest, + BodyParameter, DeltaPageResult, DeltaDetailsTrait >; @@ -71,7 +71,7 @@ interface Assets { @Versioning.added(Versions.v2024_03_01_preview) getDeltaSummary is Operations.ResourceCollectionAction< AssetResource, - DeltaSummaryRequest, + BodyParameter, DeltaSummaryResult, {} >; @@ -90,7 +90,7 @@ interface DataConnections { @action("validate") validateDataConnection is Operations.ResourceCollectionAction< DataConnection, - DataConnectionData, + BodyParameter, ValidateResult >; @doc("Retrieve a data connection with a given dataConnectionName.") @@ -102,7 +102,7 @@ interface DataConnections { @put createOrReplaceDataConnection is Foundations.ResourceOperation< DataConnection, - DataConnectionData, + BodyParameter, DataConnection >; @@ -122,7 +122,7 @@ interface DiscoveryGroups { @clientName("ValidateDiscoveryGroup", "csharp") validateDiscoGroup is Operations.ResourceCollectionAction< DiscoGroup, - DiscoGroupData, + BodyParameter, ValidateResult >; @doc("Retrieve a discovery group with a given groupName.") @@ -162,7 +162,7 @@ interface DiscoveryGroups { @Versioning.added(Versions.v2024_03_01_preview) getAssetChainSummary is Operations.ResourceCollectionAction< DiscoGroup, - AssetChainRequest, + BodyParameter, AssetChainSummaryResult >; @@ -171,7 +171,7 @@ interface DiscoveryGroups { @Versioning.added(Versions.v2024_03_01_preview) dismissAssetChain is Operations.ResourceCollectionAction< DiscoGroup, - AssetChainRequest, + BodyParameter, Task >; } @@ -203,7 +203,7 @@ interface Reports { @route("/reports/assets:getSnapshot") @post getSnapshot is Foundations.Operation< - ReportAssetSnapshotRequest, + BodyParameter, ReportAssetSnapshotResult >; #suppress "@azure-tools/typespec-azure-core/use-standard-operations" @@ -211,7 +211,7 @@ interface Reports { @route("/reports/assets:getSummary") @post getSummary is Foundations.Operation< - ReportAssetSummaryRequest, + BodyParameter, ReportAssetSummaryResult >; @@ -221,7 +221,7 @@ interface Reports { @route("/reports/assets:getSnapshotExport") @post getSnapshotExport is Foundations.Operation< - ReportAssetSnapshotExportRequest, + BodyParameter, Task >; } diff --git a/specification/riskiq/data-plane/Microsoft.Easm/preview/2023-03-01-preview/easm.json b/specification/riskiq/data-plane/Microsoft.Easm/preview/2023-03-01-preview/easm.json index 80583013d4dc..dd82cf71c089 100644 --- a/specification/riskiq/data-plane/Microsoft.Easm/preview/2023-03-01-preview/easm.json +++ b/specification/riskiq/data-plane/Microsoft.Easm/preview/2023-03-01-preview/easm.json @@ -337,6 +337,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DataConnectionData" @@ -425,6 +426,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DataConnectionData" @@ -718,6 +720,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DiscoGroupData" @@ -901,6 +904,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ReportAssetSnapshotRequest" @@ -948,6 +952,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ReportAssetSummaryRequest" diff --git a/specification/riskiq/data-plane/Microsoft.Easm/preview/2024-03-01-preview/easm.json b/specification/riskiq/data-plane/Microsoft.Easm/preview/2024-03-01-preview/easm.json index 7414e732a170..d6f807a38604 100644 --- a/specification/riskiq/data-plane/Microsoft.Easm/preview/2024-03-01-preview/easm.json +++ b/specification/riskiq/data-plane/Microsoft.Easm/preview/2024-03-01-preview/easm.json @@ -314,6 +314,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/AssetsExportRequest" @@ -367,6 +368,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DeltaDetailsRequest" @@ -417,6 +419,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DeltaSummaryRequest" @@ -651,6 +654,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DataConnectionData" @@ -739,6 +743,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DataConnectionData" @@ -1073,6 +1078,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/AssetChainRequest" @@ -1120,6 +1126,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/AssetChainRequest" @@ -1167,6 +1174,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/DiscoGroupData" @@ -1350,6 +1358,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ReportAssetSnapshotRequest" @@ -1397,6 +1406,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ReportAssetSnapshotExportRequest" @@ -1444,6 +1454,7 @@ { "name": "body", "in": "body", + "description": "Body parameter.", "required": true, "schema": { "$ref": "#/definitions/ReportAssetSummaryRequest" diff --git a/specification/voiceservices/VoiceServices.Provisioning/main.tsp b/specification/voiceservices/VoiceServices.Provisioning/main.tsp index caf465c869bc..02a41d6528cc 100644 --- a/specification/voiceservices/VoiceServices.Provisioning/main.tsp +++ b/specification/voiceservices/VoiceServices.Provisioning/main.tsp @@ -781,6 +781,17 @@ model CountOfRecordsHeader { countOfRecords?: int32; } +alias BodyParameter< + T, + TName extends valueof string = "body", + TDoc extends valueof string = "Body parameter." +> = { + @doc(TDoc) + @friendlyName(TName) + @bodyRoot + body: T; +}; + alias FilterQueryParameters = QueryParametersTrait<{ ...FilterQueryParameter; }>; @@ -843,7 +854,11 @@ interface Accounts { @doc("Create or update up to 100 Numbers on the specified account.") createOrUpdateNumbers is Operations.ResourceAction< AccountResource, - BatchNumbers, + BodyParameter< + BatchNumbers, + "body", + "Batch of numbers to create or replace." + >, BatchNumbers >; @@ -852,7 +867,7 @@ interface Accounts { @doc("Delete up to 100 Numbers on the specified account.") deleteNumbers is Operations.ResourceAction< AccountResource, - BatchNumbersDelete, + BodyParameter, NoContentResponse >; @@ -893,7 +908,11 @@ interface Accounts { @doc("Get a list of Teams Available Capabilities on the specified account.") getTeamsAvailableCapabilities is Operations.ResourceAction< AccountResource, - NumberIdentifiers, + BodyParameter< + NumberIdentifiers, + "body", + "List identifiers for a Number resource" + >, TeamsAvailableCapabilities >; diff --git a/specification/voiceservices/data-plane/Microsoft.VoiceServices/preview/2024-02-29-preview/swagger.json b/specification/voiceservices/data-plane/Microsoft.VoiceServices/preview/2024-02-29-preview/swagger.json index 87695257d9f6..25cd2ef5dae0 100644 --- a/specification/voiceservices/data-plane/Microsoft.VoiceServices/preview/2024-02-29-preview/swagger.json +++ b/specification/voiceservices/data-plane/Microsoft.VoiceServices/preview/2024-02-29-preview/swagger.json @@ -499,6 +499,7 @@ { "name": "body", "in": "body", + "description": "Batch of numbers to create or replace.", "required": true, "schema": { "$ref": "#/definitions/BatchNumbers" @@ -597,6 +598,7 @@ { "name": "body", "in": "body", + "description": "Batch numbers to delete.", "required": true, "schema": { "$ref": "#/definitions/BatchNumbersDelete" @@ -782,6 +784,7 @@ { "name": "body", "in": "body", + "description": "List identifiers for a Number resource", "required": true, "schema": { "$ref": "#/definitions/NumberIdentifiers" From 43f10d3b8bacd5fc6b01254b5050c613f26c3573 Mon Sep 17 00:00:00 2001 From: yaotongms <137821665+yaotongms@users.noreply.github.com> Date: Wed, 26 Jun 2024 19:17:23 -0400 Subject: [PATCH 25/52] hybridcompute - update readme.md and description for SDK commands generation (#29510) * add back command * remove run command PATCH * update operation description --- .../preview/2024-05-20-preview/HybridCompute.json | 2 +- specification/hybridcompute/resource-manager/readme.md | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2024-05-20-preview/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2024-05-20-preview/HybridCompute.json index 70aeedb7d529..58d3cb75c2d8 100644 --- a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2024-05-20-preview/HybridCompute.json +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/preview/2024-05-20-preview/HybridCompute.json @@ -1173,7 +1173,7 @@ "MachineExtensions" ], "operationId": "MachineExtensions_Update", - "description": "The operation to create or update the extension.", + "description": "The operation to update the extension.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" diff --git a/specification/hybridcompute/resource-manager/readme.md b/specification/hybridcompute/resource-manager/readme.md index df97284daf81..50fbd33dc9a8 100644 --- a/specification/hybridcompute/resource-manager/readme.md +++ b/specification/hybridcompute/resource-manager/readme.md @@ -131,7 +131,8 @@ directive: subject: MachineRunCommand verb: Set remove: true - - remove-operation: Machines_CreateOrUpdate + + # we don't want user to interact with them / we don't support some operations - remove-operation: AgentVersion_List - remove-operation: AgentVersion_Get - remove-operation: HybridIdentityMetadata_Get @@ -145,7 +146,8 @@ directive: - remove-operation: NetworkConfigurations_Get - remove-operation: NetworkConfigurations_Update - remove-operation: NetworkConfigurations_CreateOrUpdate - - remove-operation: NetworkSecurityPerimeterConfigurations_ReconcileForPrivateLinkScope + - remove-operation: MachineRunCommands_Update #PATCH + ``` From 220ad9c6554fc7d6d10a89bdb441c1e3b36e3285 Mon Sep 17 00:00:00 2001 From: Mike Harder Date: Wed, 26 Jun 2024 22:01:30 -0700 Subject: [PATCH 26/52] Move TypeSpec content from ci-fix.md to wiki (#29600) --- documentation/ci-fix.md | 86 +---------------------------------------- 1 file changed, 2 insertions(+), 84 deletions(-) diff --git a/documentation/ci-fix.md b/documentation/ci-fix.md index dc37b413d2bb..6cbedb4b3d0f 100644 --- a/documentation/ci-fix.md +++ b/documentation/ci-fix.md @@ -190,70 +190,7 @@ To reproduce LintDiff failures locally, see [CONTRIBUTING.md / How to locally re ## `Swagger LintDiff` for TypeSpec: troubleshooting guides -Check `Swagger LintDiff` may fail for the OpenAPI generated from TypeSpec, even if there are no warnings or errors reported from the TypeSpec compiler. Causes include bugs in the TypeSpec OpenAPI emitter, bugs in LintDiff rules, incompatibilities between TypeSpec and LintDiff, or checks duplicated in TypeSpec and LintDiff. - -We are working to address the root causes (where possible). Until then, we recommend you [suppress](#suppression-process) these LintDiff errors, using a "permanent suppression" with a descriptive "reason", so we can revert your suppression when the root cause is fixed. - -### `Record` causes `AvoidAdditionalProperties` and `PropertiesTypeObjectNoDefinition` - -The use of `Record` in TypeSpec is discouraged, and there is a TypeSpec lint rule to enforce this. If you still need to use `Record`, the OpenAPI spec generated will cause many LintDiff errors of types `AvoidAdditionalProperties` and `PropertiesTypeObjectNoDefinition`. You will need to suppress both the TypeSpec violation (in TypeSpec source code) and the LintDiff violations. - -### `RequestBodyMustExistForPutPatch` - -We believe this is a false positive: https://github.com/Azure/azure-openapi-validator/issues/641 - -### `PatchPropertiesCorrespondToPutProperties` - -We believe this is a false positive: https://github.com/Azure/azure-openapi-validator/issues/642 - -### `@singleton` causes `EvenSegmentedPathForPutOperation` and `XmsPageableForListCalls` - -If `EvenSegmentedPathForPutOperation` and/or `XmsPageableForListCalls` are failing for OpenAPI generated from TypeSpec using `@singleton` (OpenAPI path ends with `/default`), we believe this is a false positive: https://github.com/Azure/azure-openapi-validator/issues/646 - -### `AvoidAnonymousParameter`, `AvoidAnonymousTypes`, `IntegerTypeMustHaveFormat` - -Data-plane specs can suppress violations of the following rules, since they only exist for the benefit of SDKs generated from swagger, and data-plane SDKs are generated directly from TypeSpec. Resource-manager specs should **not** suppress violations of these rules, since resource-manager SDKs are generated from OpenAPI, and rely on these errors being fixed. - -- `AvoidAnonymousParameter` -- `AvoidAnonymousTypes` -- `IntegerTypeMustHaveFormat` - -### `AvoidAnonymousTypes` inside a 202 response - -As an exception to the previous note, resource-manager specs **may** be able to suppress `AvoidAnonymousTypes`, but only if the error is inside a 202 response from a long-running operation (LRO). It is known that SDKs do not need to generate type names for such responses. - -### `OAuth2Auth` causes `XmsEnumValidation` - -TypeSpec using `OAuth2Auth` may generate the following OpenAPI: - -``` yaml -"type": { - "type": "string", - "description": "OAuth2 authentication", - "enum": [ - "oauth2" - ] -}, -``` - -Which causes error `XmsEnumValidation`. The recommended workaround is to add `omit-unreachable-types: true` to your `tspconfig.yaml`. - -### `ProvisioningStateMustBeReadOnly` - -The root cause is bugs in `azure-openapi-validator` and `oav`: - -https://github.com/Azure/azure-openapi-validator/issues/637 -https://github.com/Azure/oav/issues/848 - -The recommended workaround is to add `use-read-only-status-schema: true` to your `tspconfig.yaml`. - -### `PatchBodyParameterSchema` - -The root cause is a bug in typespec-azure: - -https://github.com/Azure/typespec-azure/issues/383. - -Please see the issue above for the suggested workaround and apply it directly to the spec TypeSpec sources. The LintDiff error should **not** be ignored or suppressed. +https://github.com/Azure/azure-rest-api-specs/wiki/Swagger-LintDiff-for-TypeSpec ## `Swagger ModelValidation` @@ -343,26 +280,7 @@ If you need more information on see [cspell configuration](https://cspell.org/co ## `TypeSpec Validation` -This validator will help ensure your TypeSpec project follows [standard conventions](https://github.com/Azure/azure-rest-api-specs/blob/main/documentation/typespec-structure-guidelines.md) as well ensures that the [generated OpenAPI spec](https://azure.github.io/typespec-azure/docs/emitters/typespec-autorest) files are in-sync with your project. - -### Run `tsv` locally - -``` powershell -cd -git checkout -git merge -npm ci -npx tsv -git commit; git push (if any changes) - -# example -npx tsv specification/contosowidgetmanager/Contoso.WidgetManager -``` - -Then check any errors that might be outputted and address any issues as needed. If there are changed files after the runit generally means -that the generated OpenAPI spec files were not in-sync with the TypeSpec project and you should include those changes in your pull request as well. - -If none of the above helped, please reach out on [TypeSpec Discussions Teams channel]. +https://github.com/Azure/azure-rest-api-specs/wiki/TypeSpec-Validation ## `license/cla` From ff6de81b4e56d95e867083f7eb37a524fa6855f6 Mon Sep 17 00:00:00 2001 From: Marcus Beltman Date: Thu, 27 Jun 2024 09:22:56 -0700 Subject: [PATCH 27/52] Add Azure async APIs to Maps data plane api-version 2023-12-01-preview (#29472) * Add Azure async APIs. * Add examples, fix return codes. * Fix typo. * Add tags, run linter. * Add missing refs. * Formatting * Add missing parameters. * Remove unused status codes, defined Location header. * Model validation errors. * Prettier * ProvisioningStateSpecifiedForLROPut * Address PR comments. * Create sdk-suppressions.yaml --------- Co-authored-by: Marcus Beltman Co-authored-by: Yuchao Yan --- .../examples/GetOperationResult.json | 19 +++ .../examples/GetOperationStatus.json | 33 ++++++ ...=> PrivateEndpointConnections_Update.json} | 9 +- .../2023-12-01-preview/maps-management.json | 108 ++++++++++++++++-- .../resource-manager/sdk-suppressions.yaml | 5 + 5 files changed, 163 insertions(+), 11 deletions(-) create mode 100644 specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/GetOperationResult.json create mode 100644 specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/GetOperationStatus.json rename specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/{PrivateEndpointConnections_Create.json => PrivateEndpointConnections_Update.json} (87%) create mode 100644 specification/maps/resource-manager/sdk-suppressions.yaml diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/GetOperationResult.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/GetOperationResult.json new file mode 100644 index 000000000000..eb70d4c9a434 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/GetOperationResult.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "operationId": "01234567-89ab-4def-0123-456789abcdef" + }, + "responses": { + "200": {}, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/GetOperationStatus.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/GetOperationStatus.json new file mode 100644 index 000000000000..ab19ebeda2de --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/GetOperationStatus.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2023-12-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "operationId": "01234567-89ab-4def-0123-456789abcdef" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/providers/Microsoft.Maps/operationsStatuses/01234567-89ab-4def-0123-456789abcdef", + "resourceId": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "01234567-89ab-4def-0123-456789abcdef", + "status": "Failed", + "startTime": "2024-01-23T01:23:45.678+09:00", + "endTime": "2024-01-23T02:00:00.000+09:00", + "percentComplete": 0.0, + "operations": [], + "error": { + "code": "BadArgument", + "message": "The provided database 'foo' has an invalid username." + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/PrivateEndpointConnections_Create.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/PrivateEndpointConnections_Update.json similarity index 87% rename from specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/PrivateEndpointConnections_Create.json rename to specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/PrivateEndpointConnections_Update.json index c66ad5987977..b821d125d149 100644 --- a/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/PrivateEndpointConnections_Create.json +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/examples/PrivateEndpointConnections_Update.json @@ -16,7 +16,7 @@ } }, "responses": { - "200": { + "201": { "body": { "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/privateEndpointConnections/privateEndpointConnectionName", "name": "privateEndpointConnectionName", @@ -31,15 +31,18 @@ "description": "Auto-Approved" } } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/operations/2d7f573a-7acd-4a3c-9425-fed7d029c69d?api-version=2023-12-01-preview" } }, - "201": { + "200": { "body": { "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/privateEndpointConnections/privateEndpointConnectionName", "name": "privateEndpointConnectionName", "type": "Microsoft.Maps/accounts/privateEndpointConnections", "properties": { - "provisioningState": "Creating", + "provisioningState": "Succeeded", "privateEndpoint": { "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/petest01" }, diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/maps-management.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/maps-management.json index ef1f3081353b..38007b56ec6f 100644 --- a/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/maps-management.json +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2023-12-01-preview/maps-management.json @@ -884,7 +884,7 @@ "description": "Create or update the state of specified private endpoint connection associated with the Maps account.", "x-ms-examples": { "PrivateEndpointConnections_Create": { - "$ref": "./examples/PrivateEndpointConnections_Create.json" + "$ref": "./examples/PrivateEndpointConnections_Update.json" } }, "parameters": [ @@ -914,12 +914,6 @@ } ], "responses": { - "200": { - "description": "Updated the private endpoint connection properties successfully.", - "schema": { - "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateEndpointConnection" - } - }, "201": { "description": "Created the private endpoint connection properties successfully.", "schema": { @@ -932,6 +926,12 @@ } } }, + "200": { + "description": "Updated the private endpoint connection properties successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -978,7 +978,7 @@ "type": "string" }, "Location": { - "description": "Operation Status Location URI", + "description": "Operation Results Location URI", "type": "string" }, "Retry-After": { @@ -1047,6 +1047,98 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maps/operationResults/{operationId}": { + "get": { + "tags": [ + "AsyncOperations" + ], + "operationId": "OperationResult_Get", + "description": "Get the result of a long running azure asynchronous operation.", + "x-ms-examples": { + "OperationResult_Get": { + "$ref": "./examples/GetOperationResult.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation ID." + } + ], + "responses": { + "200": { + "description": "" + }, + "202": { + "description": "", + "headers": { + "Location": { + "type": "string", + "description": "" + } + } + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maps/operationStatuses/{operationId}": { + "get": { + "tags": [ + "AsyncOperations" + ], + "operationId": "OperationStatus_Get", + "description": "Get the status of a long running azure asynchronous operation.", + "x-ms-examples": { + "OperationStatus_Get": { + "$ref": "./examples/GetOperationStatus.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation ID." + } + ], + "responses": { + "200": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationStatusResult" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + }, + "description": "" + } + } + } } }, "parameters": { diff --git a/specification/maps/resource-manager/sdk-suppressions.yaml b/specification/maps/resource-manager/sdk-suppressions.yaml new file mode 100644 index 000000000000..3539cf96c7c8 --- /dev/null +++ b/specification/maps/resource-manager/sdk-suppressions.yaml @@ -0,0 +1,5 @@ +suppressions: + azure-sdk-for-python: + - package: azure-mgmt-maps + breaking-changes: + - Removed operation MapsOperations.list_subscription_operations From 9d794a38333fe0713cc61f3d790cbcf5a97ad56b Mon Sep 17 00:00:00 2001 From: elizatargithub7 <148910954+elizatargithub7@users.noreply.github.com> Date: Thu, 27 Jun 2024 11:43:52 -0700 Subject: [PATCH 28/52] Quotas for DevOpsInfrastructure (#29581) * up * up * almost there * example * up * up * up * review comments --- .../SubscriptionUsages_ListByLocation.json | 44 ------- .../SubscriptionUsages_Usages.json | 38 ++++++ .../Microsoft.DevOpsInfrastructure/main.tsp | 38 +++--- .../devopsinfrastructure.json | 119 ++++++++---------- .../SubscriptionUsages_ListByLocation.json | 44 ------- .../examples/SubscriptionUsages_Usages.json | 38 ++++++ 6 files changed, 150 insertions(+), 171 deletions(-) delete mode 100644 specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/examples/2024-04-04-preview/SubscriptionUsages_ListByLocation.json create mode 100644 specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/examples/2024-04-04-preview/SubscriptionUsages_Usages.json delete mode 100644 specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/examples/SubscriptionUsages_ListByLocation.json create mode 100644 specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/examples/SubscriptionUsages_Usages.json diff --git a/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/examples/2024-04-04-preview/SubscriptionUsages_ListByLocation.json b/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/examples/2024-04-04-preview/SubscriptionUsages_ListByLocation.json deleted file mode 100644 index 0d0426186bc7..000000000000 --- a/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/examples/2024-04-04-preview/SubscriptionUsages_ListByLocation.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "title": "SubscriptionUsages_ListByLocation", - "operationId": "SubscriptionUsages_ListByLocation", - "parameters": { - "subscriptionId": "a2e95d27-c161-4b61-bda4-11512c14c2c2", - "locationName": "eastus", - "api-version": "2024-04-04-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.DevOpsInfrastructure/Usages/standardDADSv5Family", - "name": "standardDADSv5Family", - "properties": { - "unit": "Count", - "currentValue": 0, - "limit": 212, - "name": { - "value": "standardDADSv5Family", - "localizedValue": "Standard DADSv5 Family vCPUs (PME VMSS)" - } - } - }, - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.DevOpsInfrastructure/Usages/standardDPLDSv5Family", - "name": "standardDPLDSv5Family", - "properties": { - "unit": "Count", - "currentValue": 0, - "limit": 100, - "name": { - "value": "standardDPLDSv5Family", - "localizedValue": "Standard DPLDSv5 Family vCPUs (PME VMSS)" - } - } - } - ], - "nextLink": null - } - } - } -} diff --git a/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/examples/2024-04-04-preview/SubscriptionUsages_Usages.json b/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/examples/2024-04-04-preview/SubscriptionUsages_Usages.json new file mode 100644 index 000000000000..13342c3eddd7 --- /dev/null +++ b/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/examples/2024-04-04-preview/SubscriptionUsages_Usages.json @@ -0,0 +1,38 @@ +{ + "title": "SubscriptionUsages_Usages", + "operationId": "SubscriptionUsages_Usages", + "parameters": { + "subscriptionId": "a2e95d27-c161-4b61-bda4-11512c14c2c2", + "location": "eastus", + "api-version": "2024-04-04-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.DevOpsInfrastructure/Usages/standardDADSv5Family", + "unit": "Count", + "currentValue": 0, + "limit": 212, + "name": { + "value": "standardDADSv5Family", + "localizedValue": "Standard DADSv5 Family vCPUs (PME VMSS)" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.DevOpsInfrastructure/Usages/standardDPLDSv5Family", + "unit": "Count", + "currentValue": 0, + "limit": 100, + "name": { + "value": "standardDPLDSv5Family", + "localizedValue": "Standard DPLDSv5 Family vCPUs (PME VMSS)" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/main.tsp b/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/main.tsp index 7ad4b1ced9e7..a4e453a567fa 100644 --- a/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/main.tsp +++ b/specification/devopsinfrastructure/Microsoft.DevOpsInfrastructure/main.tsp @@ -23,6 +23,7 @@ namespace Microsoft.DevOpsInfrastructure; enum Versions { /** 2024-04-04-preview preview version */ @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) + @useDependency(Azure.Core.Versions.v1_0_Preview_2) `2024-04-04-preview`, } @@ -653,22 +654,35 @@ interface Sku { listByLocation is ArmListBySubscription; } +@armResourceOperations +interface SubscriptionUsages { + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-action-verb" "Actions must be HTTP Post operations." + @action + @armProviderNameValue + @get + @armResourceList(Location) + @doc("List Quota resources by subscription ID") + usages( + ...SubscriptionIdParameter, + ...Azure.ResourceManager.Foundations.DefaultProviderNamespace, + ...LocationParameter, + ...ApiVersionParameter, + ): ArmResponse> | ErrorResponse; +} + @doc("Describes Resource Quota") @parentResource(Location) -model Quota is ProxyResource { +model Quota { #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-name-pattern" "existing api" @doc("The name of the quota.") - @key("quotaName") @segment("usages") @visibility("read") @path - name: string; -} + name?: QuotaName; + + @doc("Fully qualified ARM resource id") + id: armResourceIdentifier; -#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state" "No ProvisioningState" -#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-duplicate-property" -@doc("Describes Resource Quota properties") -model QuotaProperties { @doc("The unit of usage measurement.") unit: string; @@ -677,9 +691,6 @@ model QuotaProperties { @doc("The maximum permitted usage of the resource.") limit: int64; - - @doc("The details of the quota.") - name: QuotaName; } @doc("The Quota Names") @@ -691,11 +702,6 @@ model QuotaName { localizedValue?: string; } -@armResourceOperations -interface SubscriptionUsages { - listByLocation is ArmListBySubscription; -} - #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state" "No ProvisioningState" #suppress "@azure-tools/typespec-azure-resource-manager/missing-property" "No Identity" @doc("An image resource.") diff --git a/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/devopsinfrastructure.json b/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/devopsinfrastructure.json index 89f071f7e6e0..db860f768766 100644 --- a/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/devopsinfrastructure.json +++ b/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/devopsinfrastructure.json @@ -141,34 +141,29 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.DevOpsInfrastructure/locations/{locationName}/usages": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DevOpsInfrastructure/locations/{location}/usages": { "get": { - "operationId": "SubscriptionUsages_ListByLocation", + "operationId": "SubscriptionUsages_Usages", "tags": [ "SubscriptionUsages" ], "description": "List Quota resources by subscription ID", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter" }, { - "name": "locationName", - "in": "path", - "description": "Name of the location.", - "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-.]*$" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/QuotaListResult" + "$ref": "#/definitions/PagedQuota" } }, "default": { @@ -179,8 +174,8 @@ } }, "x-ms-examples": { - "SubscriptionUsages_ListByLocation": { - "$ref": "./examples/SubscriptionUsages_ListByLocation.json" + "SubscriptionUsages_Usages": { + "$ref": "./examples/SubscriptionUsages_Usages.json" } }, "x-ms-pageable": { @@ -1094,6 +1089,27 @@ } } }, + "PagedQuota": { + "type": "object", + "description": "Paged collection of Quota items", + "properties": { + "value": { + "type": "array", + "description": "The Quota items on this page", + "items": { + "$ref": "#/definitions/Quota" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, "Pool": { "type": "object", "description": "Concrete tracked resource types can be created by aliasing this type using a specific property type.", @@ -1355,57 +1371,16 @@ "type": "object", "description": "Describes Resource Quota", "properties": { - "properties": { - "$ref": "#/definitions/QuotaProperties", - "description": "The resource-specific properties for this resource.", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" - } - ] - }, - "QuotaListResult": { - "type": "object", - "description": "The response of a Quota list operation.", - "properties": { - "value": { - "type": "array", - "description": "The Quota items on this page", - "items": { - "$ref": "#/definitions/Quota" - } + "name": { + "$ref": "#/definitions/QuotaName", + "description": "The name of the quota.", + "readOnly": true }, - "nextLink": { + "id": { "type": "string", - "format": "uri", - "description": "The link to the next page of items" - } - }, - "required": [ - "value" - ] - }, - "QuotaName": { - "type": "object", - "description": "The Quota Names", - "properties": { - "value": { - "type": "string", - "description": "The name of the resource." + "format": "arm-id", + "description": "Fully qualified ARM resource id" }, - "localizedValue": { - "type": "string", - "description": "The localized name of the resource." - } - } - }, - "QuotaProperties": { - "type": "object", - "description": "Describes Resource Quota properties", - "properties": { "unit": { "type": "string", "description": "The unit of usage measurement." @@ -1419,19 +1394,29 @@ "type": "integer", "format": "int64", "description": "The maximum permitted usage of the resource." - }, - "name": { - "$ref": "#/definitions/QuotaName", - "description": "The details of the quota." } }, "required": [ + "id", "unit", "currentValue", - "limit", - "name" + "limit" ] }, + "QuotaName": { + "type": "object", + "description": "The Quota Names", + "properties": { + "value": { + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "type": "string", + "description": "The localized name of the resource." + } + } + }, "ResourceDetailsObject": { "type": "object", "description": "A ResourceDetailsObject", diff --git a/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/examples/SubscriptionUsages_ListByLocation.json b/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/examples/SubscriptionUsages_ListByLocation.json deleted file mode 100644 index 0d0426186bc7..000000000000 --- a/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/examples/SubscriptionUsages_ListByLocation.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "title": "SubscriptionUsages_ListByLocation", - "operationId": "SubscriptionUsages_ListByLocation", - "parameters": { - "subscriptionId": "a2e95d27-c161-4b61-bda4-11512c14c2c2", - "locationName": "eastus", - "api-version": "2024-04-04-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.DevOpsInfrastructure/Usages/standardDADSv5Family", - "name": "standardDADSv5Family", - "properties": { - "unit": "Count", - "currentValue": 0, - "limit": 212, - "name": { - "value": "standardDADSv5Family", - "localizedValue": "Standard DADSv5 Family vCPUs (PME VMSS)" - } - } - }, - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.DevOpsInfrastructure/Usages/standardDPLDSv5Family", - "name": "standardDPLDSv5Family", - "properties": { - "unit": "Count", - "currentValue": 0, - "limit": 100, - "name": { - "value": "standardDPLDSv5Family", - "localizedValue": "Standard DPLDSv5 Family vCPUs (PME VMSS)" - } - } - } - ], - "nextLink": null - } - } - } -} diff --git a/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/examples/SubscriptionUsages_Usages.json b/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/examples/SubscriptionUsages_Usages.json new file mode 100644 index 000000000000..13342c3eddd7 --- /dev/null +++ b/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/preview/2024-04-04-preview/examples/SubscriptionUsages_Usages.json @@ -0,0 +1,38 @@ +{ + "title": "SubscriptionUsages_Usages", + "operationId": "SubscriptionUsages_Usages", + "parameters": { + "subscriptionId": "a2e95d27-c161-4b61-bda4-11512c14c2c2", + "location": "eastus", + "api-version": "2024-04-04-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.DevOpsInfrastructure/Usages/standardDADSv5Family", + "unit": "Count", + "currentValue": 0, + "limit": 212, + "name": { + "value": "standardDADSv5Family", + "localizedValue": "Standard DADSv5 Family vCPUs (PME VMSS)" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.DevOpsInfrastructure/Usages/standardDPLDSv5Family", + "unit": "Count", + "currentValue": 0, + "limit": 100, + "name": { + "value": "standardDPLDSv5Family", + "localizedValue": "Standard DPLDSv5 Family vCPUs (PME VMSS)" + } + } + ], + "nextLink": null + } + } + } +} From bfb929ca5fd9e73258071724b440ae244e084c56 Mon Sep 17 00:00:00 2001 From: Alan Zimmer <48699787+alzimmermsft@users.noreply.github.com> Date: Thu, 27 Jun 2024 15:55:32 -0400 Subject: [PATCH 29/52] Revert WebApiSkill design change (#29614) --- .../stable/2024-07-01/searchservice.json | 31 +++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/specification/search/data-plane/Azure.Search/stable/2024-07-01/searchservice.json b/specification/search/data-plane/Azure.Search/stable/2024-07-01/searchservice.json index 1963fef0f568..c1281bce0580 100644 --- a/specification/search/data-plane/Azure.Search/stable/2024-07-01/searchservice.json +++ b/specification/search/data-plane/Azure.Search/stable/2024-07-01/searchservice.json @@ -8787,12 +8787,26 @@ "allOf": [ { "$ref": "#/definitions/SearchIndexerSkill" - }, - { - "$ref": "#/definitions/WebApiParameters" } ], "properties": { + "uri": { + "type": "string", + "description": "The url for the Web API." + }, + "httpHeaders": { + "$ref": "#/definitions/WebApiHttpHeaders", + "description": "The headers required to make the http request." + }, + "httpMethod": { + "type": "string", + "description": "The method for the http request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, "batchSize": { "type": "integer", "format": "int32", @@ -8804,6 +8818,17 @@ "format": "int32", "x-nullable": true, "description": "If set, the number of parallel calls that can be made to the Web API." + }, + "authResourceId": { + "type": "string", + "x-nullable": true, + "x-ms-format": "arm-id", + "description": "Applies to custom skills that connect to external code in an Azure function or some other application that provides the transformations. This value should be the application ID created for the function or app when it was registered with Azure Active Directory. When specified, the custom skill connects to the function or app using a managed ID (either system or user-assigned) of the search service and the access token of the function or app, using this value as the resource id for creating the scope of the access token." + }, + "authIdentity": { + "$ref": "#/definitions/SearchIndexerDataIdentity", + "x-nullable": true, + "description": "The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared." } }, "required": [ From 282cbb1ece88b61690962c14eff25df3b669b3c4 Mon Sep 17 00:00:00 2001 From: rakshithtr <135733794+rakshithtr@users.noreply.github.com> Date: Thu, 27 Jun 2024 16:38:50 -0700 Subject: [PATCH 30/52] Fixing swagger model validation failures (#29507) * Fixing swagger model validation failures * Added headers and changed final state via * Adding location also as part of header --- .../ExpressRoutePortAuthorizationDelete.json | 6 +++- .../examples/ExpressRoutePortDelete.json | 6 +++- .../examples/RouteFilterDelete.json | 6 +++- .../examples/RouteFilterRuleDelete.json | 6 +++- .../stable/2024-01-01/expressRoutePort.json | 28 ++++++++++++++++--- .../stable/2024-01-01/routeFilter.json | 28 ++++++++++++++++--- 6 files changed, 68 insertions(+), 12 deletions(-) diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/ExpressRoutePortAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/ExpressRoutePortAuthorizationDelete.json index 22203ddd57ae..eec6e71f6561 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/ExpressRoutePortAuthorizationDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/ExpressRoutePortAuthorizationDelete.json @@ -8,7 +8,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "" + } + }, "204": {} } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/ExpressRoutePortDelete.json index e760dbdbee10..eb31a9fc9595 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/ExpressRoutePortDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/ExpressRoutePortDelete.json @@ -7,7 +7,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "" + } + }, "204": {} } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/RouteFilterDelete.json index f937aa3a8625..3e1b8cbfb2fd 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/RouteFilterDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/RouteFilterDelete.json @@ -7,7 +7,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "" + } + }, "204": {} } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/RouteFilterRuleDelete.json index 4cc4dae1b8af..2daa849def13 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/RouteFilterRuleDelete.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/examples/RouteFilterRuleDelete.json @@ -8,7 +8,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "" + } + }, "204": {} } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/expressRoutePort.json index 722f3b9b0308..c4958cd93282 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/expressRoutePort.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/expressRoutePort.json @@ -150,7 +150,17 @@ "description": "Delete successful." }, "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } }, "204": { "description": "Request successful. Resource does not exist." @@ -164,7 +174,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "location" + "final-state-via": "azure-async-operation" }, "x-ms-examples": { "ExpressRoutePortDelete": { @@ -643,7 +653,17 @@ "description": "Delete successful." }, "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } }, "204": { "description": "Request successful. Resource does not exist." @@ -657,7 +677,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "location" + "final-state-via": "azure-async-operation" }, "x-ms-examples": { "Delete ExpressRoutePort Authorization": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/routeFilter.json index 483e4994133a..2d836503b790 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/routeFilter.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2024-01-01/routeFilter.json @@ -70,7 +70,17 @@ ], "responses": { "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } }, "200": { "description": "Delete successful." @@ -87,7 +97,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "location" + "final-state-via": "azure-async-operation" } }, "get": { @@ -398,7 +408,17 @@ ], "responses": { "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } }, "200": { "description": "Accepted." @@ -415,7 +435,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "location" + "final-state-via": "azure-async-operation" } }, "get": { From eabbc8ab2cc98dc0753ae6eebffc5b4ba5def1ec Mon Sep 17 00:00:00 2001 From: v-maksymm <161892853+v-maksymm@users.noreply.github.com> Date: Thu, 27 Jun 2024 16:39:24 -0700 Subject: [PATCH 31/52] Oracle.Database. Removed readonly properties from required (#29618) * Oracle.Database. Readonly properties not required anymore * Oracle.Database. Readonly properties not required anymore --- .../autonomousDatabaseCharacterSet.tsp | 2 +- ...autonomousDatabaseNationalCharacterSet.tsp | 2 +- .../autonomousDatabaseVersion.tsp | 2 +- .../oracle/models/exadata/dbNodes.tsp | 4 +- .../oracle/models/exadata/dbSystemShapes.tsp | 2 +- .../oracle/models/exadata/dnsPrivateViews.tsp | 10 ++-- .../oracle/models/exadata/dnsPrivateZones.tsp | 14 ++--- .../oracle/models/exadata/giVersions.tsp | 2 +- .../oracle/models/exadata/systemVersions.tsp | 2 +- .../preview/2023-09-01-preview/openapi.json | 56 +++---------------- .../stable/2023-09-01/openapi.json | 56 +++---------------- 11 files changed, 38 insertions(+), 114 deletions(-) diff --git a/specification/oracle/models/autonomousdatabase/autonomousDatabaseCharacterSet.tsp b/specification/oracle/models/autonomousdatabase/autonomousDatabaseCharacterSet.tsp index c7068156c821..ff3c443f7557 100644 --- a/specification/oracle/models/autonomousdatabase/autonomousDatabaseCharacterSet.tsp +++ b/specification/oracle/models/autonomousdatabase/autonomousDatabaseCharacterSet.tsp @@ -26,5 +26,5 @@ model AutonomousDatabaseCharacterSetProperties { @visibility("read") @minLength(1) @maxLength(255) - characterSet: string; + characterSet?: string; } diff --git a/specification/oracle/models/autonomousdatabase/autonomousDatabaseNationalCharacterSet.tsp b/specification/oracle/models/autonomousdatabase/autonomousDatabaseNationalCharacterSet.tsp index 91891da25d0d..bf3d8b820d61 100644 --- a/specification/oracle/models/autonomousdatabase/autonomousDatabaseNationalCharacterSet.tsp +++ b/specification/oracle/models/autonomousdatabase/autonomousDatabaseNationalCharacterSet.tsp @@ -26,5 +26,5 @@ model AutonomousDatabaseNationalCharacterSetProperties { @visibility("read") @minLength(1) @maxLength(255) - characterSet: string; + characterSet?: string; } diff --git a/specification/oracle/models/autonomousdatabase/autonomousDatabaseVersion.tsp b/specification/oracle/models/autonomousdatabase/autonomousDatabaseVersion.tsp index 8560d62b80fe..3171fdebcc8e 100644 --- a/specification/oracle/models/autonomousdatabase/autonomousDatabaseVersion.tsp +++ b/specification/oracle/models/autonomousdatabase/autonomousDatabaseVersion.tsp @@ -26,7 +26,7 @@ model AutonomousDbVersionProperties { @visibility("read") @minLength(1) @maxLength(255) - version: string; + version?: string; @doc("The Autonomous Database workload type") @visibility("read") diff --git a/specification/oracle/models/exadata/dbNodes.tsp b/specification/oracle/models/exadata/dbNodes.tsp index bfb4a295cbaf..04c9556f6ec0 100644 --- a/specification/oracle/models/exadata/dbNodes.tsp +++ b/specification/oracle/models/exadata/dbNodes.tsp @@ -22,7 +22,7 @@ model DbNode is ProxyResource { model DbNodeProperties { @doc("DbNode OCID") @visibility("read") - ocid: Ocid; + ocid?: Ocid; @doc("Additional information about the planned maintenance.") @visibility("read") @@ -54,7 +54,7 @@ model DbNodeProperties { @doc("The OCID of the DB system.") @visibility("read") - dbSystemId: Ocid; + dbSystemId?: Ocid; @doc("The name of the Fault Domain the instance is contained in.") @minLength(1) diff --git a/specification/oracle/models/exadata/dbSystemShapes.tsp b/specification/oracle/models/exadata/dbSystemShapes.tsp index c76cf13f1f79..3e80e8c9b6b9 100644 --- a/specification/oracle/models/exadata/dbSystemShapes.tsp +++ b/specification/oracle/models/exadata/dbSystemShapes.tsp @@ -26,7 +26,7 @@ model DbSystemShapeProperties { @doc("The maximum number of CPU cores that can be enabled on the DB system for this shape.") @visibility("read") - availableCoreCount: int32; + availableCoreCount?: int32; @doc("The minimum number of CPU cores that can be enabled on the DB system for this shape.") @visibility("read") diff --git a/specification/oracle/models/exadata/dnsPrivateViews.tsp b/specification/oracle/models/exadata/dnsPrivateViews.tsp index d697db6a5313..a961039310a2 100644 --- a/specification/oracle/models/exadata/dnsPrivateViews.tsp +++ b/specification/oracle/models/exadata/dnsPrivateViews.tsp @@ -21,7 +21,7 @@ model DnsPrivateView is ProxyResource { model DnsPrivateViewProperties { @doc("The OCID of the view") @visibility("read") - ocid: Ocid; + ocid?: Ocid; @doc("The display name of the view resource") @visibility("read") @@ -29,7 +29,7 @@ model DnsPrivateViewProperties { @doc("A Boolean flag indicating whether or not parts of the resource are unable to be explicitly managed.") @visibility("read") - isProtected: boolean; + isProtected?: boolean; @doc("Views lifecycleState") @visibility("read") @@ -37,15 +37,15 @@ model DnsPrivateViewProperties { @doc("The canonical absolute URL of the resource.") @visibility("read") - self: string; + self?: string; @doc("views timeCreated") @visibility("read") - timeCreated: utcDateTime; + timeCreated?: utcDateTime; @doc("views timeCreated") @visibility("read") - timeUpdated: utcDateTime; + timeUpdated?: utcDateTime; @doc("Azure resource provisioning state.") @visibility("read") diff --git a/specification/oracle/models/exadata/dnsPrivateZones.tsp b/specification/oracle/models/exadata/dnsPrivateZones.tsp index 7713ed63fb9b..93fe7769b273 100644 --- a/specification/oracle/models/exadata/dnsPrivateZones.tsp +++ b/specification/oracle/models/exadata/dnsPrivateZones.tsp @@ -23,11 +23,11 @@ model DnsPrivateZone is ProxyResource { model DnsPrivateZoneProperties { @doc("The OCID of the Zone") @visibility("read") - ocid: Ocid; + ocid?: Ocid; @doc("A Boolean flag indicating whether or not parts of the resource are unable to be explicitly managed.") @visibility("read") - isProtected: boolean; + isProtected?: boolean; @doc("Zones lifecycleState") @visibility("read") @@ -35,15 +35,15 @@ model DnsPrivateZoneProperties { @doc("The canonical absolute URL of the resource.") @visibility("read") - self: string; + self?: string; @doc("The current serial of the zone. As seen in the zone's SOA record.") @visibility("read") - serial: int32; + serial?: int32; @doc("Version is the never-repeating, totally-orderable, version of the zone, from which the serial field of the zone's SOA record is derived.") @visibility("read") - version: string; + version?: string; @doc("The OCID of the private view containing the zone. This value will be null for zones in the global DNS, which are publicly resolvable and not part of a private view.") @visibility("read") @@ -51,11 +51,11 @@ model DnsPrivateZoneProperties { @doc("The type of the zone. Must be either PRIMARY or SECONDARY. SECONDARY is only supported for GLOBAL zones.") @visibility("read") - zoneType: ZoneType; + zoneType?: ZoneType; @doc("Zones timeCreated") @visibility("read") - timeCreated: utcDateTime; + timeCreated?: utcDateTime; @doc("Azure resource provisioning state.") @visibility("read") diff --git a/specification/oracle/models/exadata/giVersions.tsp b/specification/oracle/models/exadata/giVersions.tsp index b61ac14c9d23..5699089bf101 100644 --- a/specification/oracle/models/exadata/giVersions.tsp +++ b/specification/oracle/models/exadata/giVersions.tsp @@ -22,5 +22,5 @@ model GiVersionProperties { @visibility("read") @minLength(1) @maxLength(255) - version: string; + version?: string; } diff --git a/specification/oracle/models/exadata/systemVersions.tsp b/specification/oracle/models/exadata/systemVersions.tsp index bfd2ed4af0d8..b47e22617554 100644 --- a/specification/oracle/models/exadata/systemVersions.tsp +++ b/specification/oracle/models/exadata/systemVersions.tsp @@ -32,5 +32,5 @@ model SystemVersionsFilter { model SystemVersionProperties { @doc("A valid Oracle System Version") @visibility("read") - systemVersion: string; + systemVersion?: string; } diff --git a/specification/oracle/resource-manager/Oracle.Database/preview/2023-09-01-preview/openapi.json b/specification/oracle/resource-manager/Oracle.Database/preview/2023-09-01-preview/openapi.json index 99c09e6891a0..60ebeff32eec 100644 --- a/specification/oracle/resource-manager/Oracle.Database/preview/2023-09-01-preview/openapi.json +++ b/specification/oracle/resource-manager/Oracle.Database/preview/2023-09-01-preview/openapi.json @@ -4757,10 +4757,7 @@ "maxLength": 255, "readOnly": true } - }, - "required": [ - "characterSet" - ] + } }, "AutonomousDatabaseCloneProperties": { "type": "object", @@ -5049,10 +5046,7 @@ "maxLength": 255, "readOnly": true } - }, - "required": [ - "characterSet" - ] + } }, "AutonomousDatabaseProperties": { "type": "object", @@ -5428,10 +5422,7 @@ "description": "True if this version of the Oracle Database software has payments enabled.", "readOnly": true } - }, - "required": [ - "version" - ] + } }, "AutonomousMaintenanceScheduleType": { "type": "string", @@ -7148,11 +7139,7 @@ "description": "Azure resource provisioning state.", "readOnly": true } - }, - "required": [ - "ocid", - "dbSystemId" - ] + } }, "DbNodeProvisioningState": { "type": "string", @@ -7663,10 +7650,7 @@ "description": "The maximum number of CPU cores per database node that can be enabled for this shape. Only applicable to the flex Exadata shape and ExaCC Elastic shapes.", "readOnly": true } - }, - "required": [ - "availableCoreCount" - ] + } }, "DisasterRecoveryType": { "type": "string", @@ -7799,14 +7783,7 @@ "description": "Azure resource provisioning state.", "readOnly": true } - }, - "required": [ - "ocid", - "isProtected", - "self", - "timeCreated", - "timeUpdated" - ] + } }, "DnsPrivateViewsLifecycleState": { "type": "string", @@ -7937,16 +7914,7 @@ "description": "Azure resource provisioning state.", "readOnly": true } - }, - "required": [ - "ocid", - "isProtected", - "self", - "serial", - "version", - "zoneType", - "timeCreated" - ] + } }, "DnsPrivateZonesLifecycleState": { "type": "string", @@ -8148,10 +8116,7 @@ "maxLength": 255, "readOnly": true } - }, - "required": [ - "version" - ] + } }, "HostFormatType": { "type": "string", @@ -9448,10 +9413,7 @@ "description": "A valid Oracle System Version", "readOnly": true } - }, - "required": [ - "systemVersion" - ] + } }, "SystemVersionsFilter": { "type": "object", diff --git a/specification/oracle/resource-manager/Oracle.Database/stable/2023-09-01/openapi.json b/specification/oracle/resource-manager/Oracle.Database/stable/2023-09-01/openapi.json index c52ff3db2159..1dcb369c3183 100644 --- a/specification/oracle/resource-manager/Oracle.Database/stable/2023-09-01/openapi.json +++ b/specification/oracle/resource-manager/Oracle.Database/stable/2023-09-01/openapi.json @@ -4757,10 +4757,7 @@ "maxLength": 255, "readOnly": true } - }, - "required": [ - "characterSet" - ] + } }, "AutonomousDatabaseCloneProperties": { "type": "object", @@ -5049,10 +5046,7 @@ "maxLength": 255, "readOnly": true } - }, - "required": [ - "characterSet" - ] + } }, "AutonomousDatabaseProperties": { "type": "object", @@ -5428,10 +5422,7 @@ "description": "True if this version of the Oracle Database software has payments enabled.", "readOnly": true } - }, - "required": [ - "version" - ] + } }, "AutonomousMaintenanceScheduleType": { "type": "string", @@ -7148,11 +7139,7 @@ "description": "Azure resource provisioning state.", "readOnly": true } - }, - "required": [ - "ocid", - "dbSystemId" - ] + } }, "DbNodeProvisioningState": { "type": "string", @@ -7663,10 +7650,7 @@ "description": "The maximum number of CPU cores per database node that can be enabled for this shape. Only applicable to the flex Exadata shape and ExaCC Elastic shapes.", "readOnly": true } - }, - "required": [ - "availableCoreCount" - ] + } }, "DisasterRecoveryType": { "type": "string", @@ -7799,14 +7783,7 @@ "description": "Azure resource provisioning state.", "readOnly": true } - }, - "required": [ - "ocid", - "isProtected", - "self", - "timeCreated", - "timeUpdated" - ] + } }, "DnsPrivateViewsLifecycleState": { "type": "string", @@ -7937,16 +7914,7 @@ "description": "Azure resource provisioning state.", "readOnly": true } - }, - "required": [ - "ocid", - "isProtected", - "self", - "serial", - "version", - "zoneType", - "timeCreated" - ] + } }, "DnsPrivateZonesLifecycleState": { "type": "string", @@ -8148,10 +8116,7 @@ "maxLength": 255, "readOnly": true } - }, - "required": [ - "version" - ] + } }, "HostFormatType": { "type": "string", @@ -9448,10 +9413,7 @@ "description": "A valid Oracle System Version", "readOnly": true } - }, - "required": [ - "systemVersion" - ] + } }, "SystemVersionsFilter": { "type": "object", From efef59e950034b937c8d98779ce3a2e8ddbcd7de Mon Sep 17 00:00:00 2001 From: Mary Gao Date: Fri, 28 Jun 2024 09:05:45 +0800 Subject: [PATCH 32/52] tsp, loadtesting, update client.tsp to fix the path change issue for action operation (#29597) * Update the client.tsp * Update specification/loadtestservice/LoadTestService/client.tsp --- specification/loadtestservice/LoadTestService/client.tsp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/specification/loadtestservice/LoadTestService/client.tsp b/specification/loadtestservice/LoadTestService/client.tsp index 0b0a9a46833d..021393f03ca9 100644 --- a/specification/loadtestservice/LoadTestService/client.tsp +++ b/specification/loadtestservice/LoadTestService/client.tsp @@ -57,7 +57,8 @@ interface TestRunOperations { listMetrics is LoadTestRun.listMetrics; listTestRuns is LoadTestRun.listTestRuns; #suppress "@azure-tools/typespec-azure-core/no-operation-id" - stopTestRun is LoadTestRun.stop; + @clientName("stopTestRun", "javascript,python,java,csharp,go") + stop is LoadTestRun.stop; } @client({ @@ -81,5 +82,6 @@ interface TestProfileRunOperations { getTestProfileRun is TestProfileRunAdministration.getTestProfileRun; listTestProfileRuns is TestProfileRunAdministration.listTestProfileRuns; #suppress "@azure-tools/typespec-azure-core/no-operation-id" - stopTestProfileRun is TestProfileRunAdministration.stop; + @clientName("stopTestProfileRun", "javascript,python,java,csharp,go") + stop is TestProfileRunAdministration.stop; } From 6bebe7d575204dd63ef437e7ba736b4922350a9d Mon Sep 17 00:00:00 2001 From: Arthur Ma Date: Fri, 28 Jun 2024 10:04:04 +0800 Subject: [PATCH 33/52] [Informatica] Fix property type (#29605) --- .../Informatica.DataManagement/client.tsp | 86 +++++++++++++++++++ ...zations_CreateOrUpdate_MaximumSet_Gen.json | 6 +- ...tAllServerlessRuntimes_MaximumSet_Gen.json | 4 +- .../Organizations_Get_MaximumSet_Gen.json | 2 +- ...ns_ListByResourceGroup_MaximumSet_Gen.json | 2 +- ...ons_ListBySubscription_MaximumSet_Gen.json | 2 +- .../Organizations_Update_MaximumSet_Gen.json | 4 +- ...untimes_CreateOrUpdate_MaximumSet_Gen.json | 12 +-- ...ServerlessRuntimes_Get_MaximumSet_Gen.json | 4 +- ...caOrganizationResource_MaximumSet_Gen.json | 4 +- ...ServerlessResourceById_MaximumSet_Gen.json | 4 +- ...verlessRuntimes_Update_MaximumSet_Gen.json | 8 +- .../Informatica.DataManagement/main.tsp | 12 +-- .../Informatica.DataManagement/tspconfig.yaml | 4 + ...zations_CreateOrUpdate_MaximumSet_Gen.json | 6 +- ...tAllServerlessRuntimes_MaximumSet_Gen.json | 4 +- .../Organizations_Get_MaximumSet_Gen.json | 2 +- ...ns_ListByResourceGroup_MaximumSet_Gen.json | 2 +- ...ons_ListBySubscription_MaximumSet_Gen.json | 2 +- .../Organizations_Update_MaximumSet_Gen.json | 4 +- ...untimes_CreateOrUpdate_MaximumSet_Gen.json | 12 +-- ...ServerlessRuntimes_Get_MaximumSet_Gen.json | 4 +- ...caOrganizationResource_MaximumSet_Gen.json | 4 +- ...ServerlessResourceById_MaximumSet_Gen.json | 4 +- ...verlessRuntimes_Update_MaximumSet_Gen.json | 8 +- .../stable/2024-05-08/openapi.json | 44 ++++++++-- 26 files changed, 185 insertions(+), 65 deletions(-) diff --git a/specification/informatica/Informatica.DataManagement/client.tsp b/specification/informatica/Informatica.DataManagement/client.tsp index 0fb1792bcb4d..070fa3ec46fd 100644 --- a/specification/informatica/Informatica.DataManagement/client.tsp +++ b/specification/informatica/Informatica.DataManagement/client.tsp @@ -4,3 +4,89 @@ import "@azure-tools/typespec-client-generator-core"; using Azure.ClientGenerator.Core; @@clientName(Informatica.DataManagement, "InformaticaDataMgmt", "python"); + +namespace Informatica.DataManagement { + @@access(Operations.list, Access.internal); + + @@clientName(InformaticaOrganizationResource, + "InformaticaOrganization", + "csharp" + ); + @@clientName(OrganizationProperties, + "InformaticaOrganizationProperties", + "csharp" + ); + @@clientName(InformaticaServerlessRuntimeResource, + "InformaticaServerlessRuntime", + "csharp" + ); + @@clientName(ApplicationConfigs, "InformaticaApplicationConfigs", "csharp"); + @@clientName(ApplicationType, "InformaticaApplicationType", "csharp"); + @@clientName(ApplicationTypeMetadata, + "InformaticaApplicationTypeMetadata", + "csharp" + ); + @@clientName(CdiConfigProps, "CdiConfigProperties", "csharp"); + @@clientName(CheckDependenciesResponse, "CheckDependenciesResult", "csharp"); + @@clientName(CompanyDetails, "InformaticaCompanyDetails", "csharp"); + @@clientName(CompanyDetailsUpdate, + "InformaticaCompanyDetailsUpdate", + "csharp" + ); + @@clientName(InfaRuntimeResourceFetchMetaData, + "InformaticaRuntimeResourceFetchMetadata", + "csharp" + ); + @@clientName(InfaServerlessFetchConfigProperties, + "InformaticaServerlessFetchConfigProperties", + "csharp" + ); + @@clientName(MarketplaceDetails, "InformaticaMarketplaceDetails", "csharp"); + @@clientName(MarketplaceDetailsUpdate, + "InformaticaMarketplaceDetailsUpdate", + "csharp" + ); + @@clientName(NetworkInterfaceConfiguration, + "InformaticaNetworkInterfaceConfiguration", + "csharp" + ); + @@clientName(NetworkInterfaceConfigurationUpdate, + "InformaticaNetworkInterfaceConfigurationUpdate", + "csharp" + ); + @@clientName(OfferDetails, "InformaticaOfferDetails", "csharp"); + @@clientName(OfferDetailsUpdate, "InformaticaOfferDetailsUpdate", "csharp"); + @@clientName(OrganizationPropertiesCustomUpdate, + "InformaticaOrganizationPropertiesUpdate", + "csharp" + ); + @@clientName(PlatformType, "InformaticaPlatformType", "csharp"); + @@clientName(ProvisioningState, "InformaticaProvisioningState", "csharp"); + @@clientName(RegionsMetadata, "InformaticaRegionsMetadata", "csharp"); + @@clientName(RuntimeType, "InformaticaRuntimeType", "csharp"); + @@clientName(ServerlessRuntimePropertiesCustomUpdate, + "ServerlessRuntimePropertiesUpdate", + "csharp" + ); + @@clientName(UserDetails, "InformaticaUserDetails", "csharp"); + @@clientName(UserDetailsUpdate, "InformaticaUserDetailsUpdate", "csharp"); + + @@clientName(ApplicationConfigs.type, "ApplicationConfigsType", "csharp"); + @@clientName(ApplicationType.CDI, "Cdi", "csharp"); + @@clientName(ApplicationType.CDIE, "Cdie", "csharp"); + @@clientName(InfaRuntimeResourceFetchMetaData.type, "RuntimeType", "csharp"); + @@clientName(InformaticaProperties.singleSignOnUrl, + "SingleSignOnUri", + "csharp" + ); + @@clientName(PlatformType.AZURE, "Azure", "csharp"); + @@clientName(RuntimeType.SERVERLESS, "Serverless", "csharp"); + @@clientName(ServerlessMetadataResponse.type, "RuntimeType", "csharp"); + + @@clientName(ServerlessRuntimes.serverlessResourceById, + "GetServerlessResourceById", + "csharp" + ); + + @@usage(ServerlessRuntimeNetworkProfileUpdate, Usage.output); +} diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_CreateOrUpdate_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_CreateOrUpdate_MaximumSet_Gen.json index 6f773c20da97..fcc843ba04b6 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_CreateOrUpdate_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_CreateOrUpdate_MaximumSet_Gen.json @@ -13,7 +13,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", @@ -60,7 +60,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", @@ -120,7 +120,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_GetAllServerlessRuntimes_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_GetAllServerlessRuntimes_MaximumSet_Gen.json index d77077cc37f2..06318830bfdc 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_GetAllServerlessRuntimes_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_GetAllServerlessRuntimes_MaximumSet_Gen.json @@ -33,10 +33,10 @@ "vnet": "vvs", "executionTimeout": "pbnxiricrjifreoiazmzeqiwu", "computeUnits": "ao", - "tenantId": "elbephnucclhjihcj", + "tenantId": "00000000-0000-0000-0000-000000000000", "subscriptionId": "zl", "region": "lrudpuvzcuh", - "serverlessArmResourceId": "kmviaxayvasaceptsuxkzhqjzjur" + "serverlessArmResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Informatica.DataManagement/organizations/org1/serverlessRuntimes/serverlessRuntimeName" }, "description": "kozzyfee" } diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_Get_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_Get_MaximumSet_Gen.json index 04b924a62fdd..e0ac50780af0 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_Get_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_Get_MaximumSet_Gen.json @@ -16,7 +16,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_ListByResourceGroup_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_ListByResourceGroup_MaximumSet_Gen.json index abf5a309fb5d..1273a003f18d 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_ListByResourceGroup_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_ListByResourceGroup_MaximumSet_Gen.json @@ -17,7 +17,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_ListBySubscription_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_ListBySubscription_MaximumSet_Gen.json index c3e4ce0ef2e8..0ba6a920206a 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_ListBySubscription_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_ListBySubscription_MaximumSet_Gen.json @@ -16,7 +16,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_Update_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_Update_MaximumSet_Gen.json index d9ac9070e270..939af4dfb1b7 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_Update_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/Organizations_Update_MaximumSet_Gen.json @@ -37,7 +37,7 @@ "business": "mwqblnruflwpolgbxpqbqneve", "numberOfEmployees": 22 }, - "existingResourceId": "uvwlcphdfkqnhrtddpsiacbowcxxo" + "existingResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Informatica.DataManagement/organizations/org1/serverlessRuntimes/serverlessRuntimeName" } } }, @@ -50,7 +50,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "szhyxzgjtssjmlguivepc", diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_CreateOrUpdate_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_CreateOrUpdate_MaximumSet_Gen.json index 3cb8bb6a5fe2..01803b123802 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_CreateOrUpdate_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_CreateOrUpdate_MaximumSet_Gen.json @@ -18,8 +18,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, @@ -89,8 +89,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, @@ -173,8 +173,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_Get_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_Get_MaximumSet_Gen.json index a89adc20ac69..e1e0e72b700a 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_Get_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_Get_MaximumSet_Gen.json @@ -21,8 +21,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_ListByInformaticaOrganizationResource_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_ListByInformaticaOrganizationResource_MaximumSet_Gen.json index 3f262de5f901..41e61e294970 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_ListByInformaticaOrganizationResource_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_ListByInformaticaOrganizationResource_MaximumSet_Gen.json @@ -22,8 +22,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s" + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1" } }, "advancedCustomProperties": [ diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_ServerlessResourceById_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_ServerlessResourceById_MaximumSet_Gen.json index 4d046777b5b8..be32cecbbfc2 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_ServerlessResourceById_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_ServerlessResourceById_MaximumSet_Gen.json @@ -21,8 +21,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, diff --git a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_Update_MaximumSet_Gen.json b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_Update_MaximumSet_Gen.json index 44d39ec80ed9..7d69d8af08e8 100644 --- a/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_Update_MaximumSet_Gen.json +++ b/specification/informatica/Informatica.DataManagement/examples/2024-05-08/ServerlessRuntimes_Update_MaximumSet_Gen.json @@ -17,8 +17,8 @@ "serverlessAccountLocation": "goaugkyfanqfnvcmntreibqrswfpis", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "tnsqwwoxydeqqffumdnxlkkb", - "subnetId": "dctcuhgttxhcarwcrgdmsfwksyrzj", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, @@ -88,8 +88,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "tnsqwwoxydeqqffumdnxlkkb", - "subnetId": "dctcuhgttxhcarwcrgdmsfwksyrzj", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, diff --git a/specification/informatica/Informatica.DataManagement/main.tsp b/specification/informatica/Informatica.DataManagement/main.tsp index 086574ad2a0d..1f248963d92d 100644 --- a/specification/informatica/Informatica.DataManagement/main.tsp +++ b/specification/informatica/Informatica.DataManagement/main.tsp @@ -233,7 +233,7 @@ model InfaServerlessFetchConfigProperties { computeUnits?: string; @doc("Tenant ID") - tenantId?: string; + tenantId?: uuid; @doc("subscription ID") subscriptionId?: string; @@ -242,7 +242,7 @@ model InfaServerlessFetchConfigProperties { region?: string; @doc("Serverless Arm Resource ID") - serverlessArmResourceId?: string; + serverlessArmResourceId?: Azure.Core.armResourceIdentifier<[]>; } @doc("A Serverless Runtime environment resource by Informatica.") @@ -348,7 +348,7 @@ model InformaticaProperties { informaticaRegion?: string; @doc("Single sing on URL for informatica organization") - singleSignOnUrl?: string; + singleSignOnUrl?: url; } @doc("Link Organization") @@ -555,10 +555,10 @@ model ApplicationConfigs { @doc("Informatica Serverless Runtime Network Interface configurations.") model NetworkInterfaceConfiguration { @doc("Virtual network resource id") - vnetId: string; + vnetId: Azure.Core.armResourceIdentifier<[]>; @doc("Virtual network subnet resource id") - subnetId: string; + subnetId: Azure.Core.armResourceIdentifier<[]>; @doc("Virtual network resource guid") vnetResourceGuid?: string; @@ -654,7 +654,7 @@ model OrganizationPropertiesCustomUpdate { companyDetails?: CompanyDetailsUpdate; @doc("Existing Resource Id") - existingResourceId?: string; + existingResourceId?: Azure.Core.armResourceIdentifier<[]>; } /** Marketplace details */ diff --git a/specification/informatica/Informatica.DataManagement/tspconfig.yaml b/specification/informatica/Informatica.DataManagement/tspconfig.yaml index 8097586e6389..d351f52d8ea3 100644 --- a/specification/informatica/Informatica.DataManagement/tspconfig.yaml +++ b/specification/informatica/Informatica.DataManagement/tspconfig.yaml @@ -19,6 +19,10 @@ options: namespace: "com.azure.resourcemanager.informaticadatamanagement" service-name: "Informatica DataManagement" examples-directory: "examples" + "@azure-tools/typespec-csharp": + flavor: azure + clear-output-folder: true + namespace: "Azure.ResourceManager.InformaticaDataManagement" linter: extends: - "@azure-tools/typespec-azure-rulesets/resource-manager" diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json index 6f773c20da97..fcc843ba04b6 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json @@ -13,7 +13,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", @@ -60,7 +60,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", @@ -120,7 +120,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_GetAllServerlessRuntimes_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_GetAllServerlessRuntimes_MaximumSet_Gen.json index d77077cc37f2..06318830bfdc 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_GetAllServerlessRuntimes_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_GetAllServerlessRuntimes_MaximumSet_Gen.json @@ -33,10 +33,10 @@ "vnet": "vvs", "executionTimeout": "pbnxiricrjifreoiazmzeqiwu", "computeUnits": "ao", - "tenantId": "elbephnucclhjihcj", + "tenantId": "00000000-0000-0000-0000-000000000000", "subscriptionId": "zl", "region": "lrudpuvzcuh", - "serverlessArmResourceId": "kmviaxayvasaceptsuxkzhqjzjur" + "serverlessArmResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Informatica.DataManagement/organizations/org1/serverlessRuntimes/serverlessRuntimeName" }, "description": "kozzyfee" } diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_Get_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_Get_MaximumSet_Gen.json index 04b924a62fdd..e0ac50780af0 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_Get_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_Get_MaximumSet_Gen.json @@ -16,7 +16,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json index abf5a309fb5d..1273a003f18d 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json @@ -17,7 +17,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_ListBySubscription_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_ListBySubscription_MaximumSet_Gen.json index c3e4ce0ef2e8..0ba6a920206a 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_ListBySubscription_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_ListBySubscription_MaximumSet_Gen.json @@ -16,7 +16,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "ovenlecocg", diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_Update_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_Update_MaximumSet_Gen.json index d9ac9070e270..939af4dfb1b7 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_Update_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/Organizations_Update_MaximumSet_Gen.json @@ -37,7 +37,7 @@ "business": "mwqblnruflwpolgbxpqbqneve", "numberOfEmployees": 22 }, - "existingResourceId": "uvwlcphdfkqnhrtddpsiacbowcxxo" + "existingResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Informatica.DataManagement/organizations/org1/serverlessRuntimes/serverlessRuntimeName" } } }, @@ -50,7 +50,7 @@ "organizationId": "wtdmhlwhkvgqdumaehgfgiqcxgnqpx", "organizationName": "nomzbvwe", "informaticaRegion": "zfqodqpbeflhedypiijdkc", - "singleSignOnUrl": "espcbzjhtmgwfdkckhqk" + "singleSignOnUrl": "https://contoso.com/singlesignon" }, "marketplaceDetails": { "marketplaceSubscriptionId": "szhyxzgjtssjmlguivepc", diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_CreateOrUpdate_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_CreateOrUpdate_MaximumSet_Gen.json index 3cb8bb6a5fe2..01803b123802 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_CreateOrUpdate_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_CreateOrUpdate_MaximumSet_Gen.json @@ -18,8 +18,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, @@ -89,8 +89,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, @@ -173,8 +173,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_Get_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_Get_MaximumSet_Gen.json index a89adc20ac69..e1e0e72b700a 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_Get_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_Get_MaximumSet_Gen.json @@ -21,8 +21,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_ListByInformaticaOrganizationResource_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_ListByInformaticaOrganizationResource_MaximumSet_Gen.json index 3f262de5f901..41e61e294970 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_ListByInformaticaOrganizationResource_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_ListByInformaticaOrganizationResource_MaximumSet_Gen.json @@ -22,8 +22,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s" + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1" } }, "advancedCustomProperties": [ diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_ServerlessResourceById_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_ServerlessResourceById_MaximumSet_Gen.json index 4d046777b5b8..be32cecbbfc2 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_ServerlessResourceById_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_ServerlessResourceById_MaximumSet_Gen.json @@ -21,8 +21,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "uaqjvtubxccjs", - "subnetId": "s", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_Update_MaximumSet_Gen.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_Update_MaximumSet_Gen.json index 44d39ec80ed9..7d69d8af08e8 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_Update_MaximumSet_Gen.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/examples/ServerlessRuntimes_Update_MaximumSet_Gen.json @@ -17,8 +17,8 @@ "serverlessAccountLocation": "goaugkyfanqfnvcmntreibqrswfpis", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "tnsqwwoxydeqqffumdnxlkkb", - "subnetId": "dctcuhgttxhcarwcrgdmsfwksyrzj", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, @@ -88,8 +88,8 @@ "serverlessAccountLocation": "bkxdfopapbqucyhduewrubjpaei", "serverlessRuntimeNetworkProfile": { "networkInterfaceConfiguration": { - "vnetId": "tnsqwwoxydeqqffumdnxlkkb", - "subnetId": "dctcuhgttxhcarwcrgdmsfwksyrzj", + "vnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1", + "subnetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/subnet1", "vnetResourceGuid": "5328d299-1462-4be0-bef1-303a28e556a0" } }, diff --git a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/openapi.json b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/openapi.json index 75f73e977db1..46a3bb064830 100644 --- a/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/openapi.json +++ b/specification/informatica/resource-manager/Informatica.DataManagement/stable/2024-05-08/openapi.json @@ -1099,6 +1099,11 @@ } } }, + "Azure.Core.uuid": { + "type": "string", + "format": "uuid", + "description": "Universally Unique Identifier" + }, "CdiConfigProps": { "type": "object", "description": "Informatica CDI Configuration Properties.", @@ -1344,7 +1349,7 @@ "description": "Compute Units" }, "tenantId": { - "type": "string", + "$ref": "#/definitions/Azure.Core.uuid", "description": "Tenant ID" }, "subscriptionId": { @@ -1357,7 +1362,11 @@ }, "serverlessArmResourceId": { "type": "string", - "description": "Serverless Arm Resource ID" + "format": "arm-id", + "description": "Serverless Arm Resource ID", + "x-ms-arm-id-details": { + "allowedResources": [] + } } } }, @@ -1433,6 +1442,7 @@ }, "singleSignOnUrl": { "type": "string", + "format": "uri", "description": "Single sing on URL for informatica organization" } } @@ -1617,11 +1627,19 @@ "properties": { "vnetId": { "type": "string", - "description": "Virtual network resource id" + "format": "arm-id", + "description": "Virtual network resource id", + "x-ms-arm-id-details": { + "allowedResources": [] + } }, "subnetId": { "type": "string", - "description": "Virtual network subnet resource id" + "format": "arm-id", + "description": "Virtual network subnet resource id", + "x-ms-arm-id-details": { + "allowedResources": [] + } }, "vnetResourceGuid": { "type": "string", @@ -1639,11 +1657,19 @@ "properties": { "vnetId": { "type": "string", - "description": "Virtual network resource id" + "format": "arm-id", + "description": "Virtual network resource id", + "x-ms-arm-id-details": { + "allowedResources": [] + } }, "subnetId": { "type": "string", - "description": "Virtual network subnet resource id" + "format": "arm-id", + "description": "Virtual network subnet resource id", + "x-ms-arm-id-details": { + "allowedResources": [] + } }, "vnetResourceGuid": { "type": "string", @@ -1783,7 +1809,11 @@ }, "existingResourceId": { "type": "string", - "description": "Existing Resource Id" + "format": "arm-id", + "description": "Existing Resource Id", + "x-ms-arm-id-details": { + "allowedResources": [] + } } } }, From 00a6d4f6cdfe2e3ffd069d0771ee0a52143a13c0 Mon Sep 17 00:00:00 2001 From: Weidong Xu Date: Fri, 28 Jun 2024 10:55:38 +0800 Subject: [PATCH 34/52] java, informatica disable emitter in tspconfig (#29598) --- .../Informatica.DataManagement/tspconfig.yaml | 12 ++++++------ .../informatica/resource-manager/readme.java.md | 2 ++ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/specification/informatica/Informatica.DataManagement/tspconfig.yaml b/specification/informatica/Informatica.DataManagement/tspconfig.yaml index d351f52d8ea3..b3a0a313df39 100644 --- a/specification/informatica/Informatica.DataManagement/tspconfig.yaml +++ b/specification/informatica/Informatica.DataManagement/tspconfig.yaml @@ -13,12 +13,12 @@ options: package-dir: "azure-mgmt-informaticadatamanagement" package-name: "{package-dir}" flavor: "azure" - "@azure-tools/typespec-java": - package-dir: "azure-resourcemanager-informaticadatamanagement" - flavor: "azure" - namespace: "com.azure.resourcemanager.informaticadatamanagement" - service-name: "Informatica DataManagement" - examples-directory: "examples" + # "@azure-tools/typespec-java": + # package-dir: "azure-resourcemanager-informaticadatamanagement" + # flavor: "azure" + # namespace: "com.azure.resourcemanager.informaticadatamanagement" + # service-name: "Informatica DataManagement" + # examples-directory: "examples" "@azure-tools/typespec-csharp": flavor: azure clear-output-folder: true diff --git a/specification/informatica/resource-manager/readme.java.md b/specification/informatica/resource-manager/readme.java.md index f8d8ad47bcf3..d62cda4a7c2f 100644 --- a/specification/informatica/resource-manager/readme.java.md +++ b/specification/informatica/resource-manager/readme.java.md @@ -5,4 +5,6 @@ These settings apply only when `--java` is specified on the command line. ```yaml $(java) service-name: Informatica DataManagement client-flattened-annotation-target: disabled +uuid-as-string: true +output-model-immutable: true ``` From a2b526504c60d58ef977ab63ac326ccefb8a208e Mon Sep 17 00:00:00 2001 From: Mike Harder Date: Fri, 28 Jun 2024 13:07:40 -0700 Subject: [PATCH 35/52] [TypeSpecRequirement] Convert to GitHub Action (#29615) --- .github/workflows/typespec-requirement.yaml | 38 +++++++++++++++++++++ eng/pipelines/typespec-requirement.yml | 22 ------------ eng/scripts/Logging-Functions.ps1 | 23 +++++++++++++ 3 files changed, 61 insertions(+), 22 deletions(-) create mode 100644 .github/workflows/typespec-requirement.yaml delete mode 100644 eng/pipelines/typespec-requirement.yml diff --git a/.github/workflows/typespec-requirement.yaml b/.github/workflows/typespec-requirement.yaml new file mode 100644 index 000000000000..d55a79d1038c --- /dev/null +++ b/.github/workflows/typespec-requirement.yaml @@ -0,0 +1,38 @@ +name: TypeSpec Requirement + +on: pull_request + +jobs: + TypeSpec-Requirement: + name: TypeSpec Requirement + strategy: + fail-fast: false + matrix: + spec-type: [data-plane, resource-manager] + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + with: + # Required since "HEAD^" is passed to TypeSpec-Requirement.ps1 + fetch-depth: 2 + + - name: Use Node 20.0 + uses: actions/setup-node@v4 + with: + node-version: 20.0 + + - run: npm --version --loglevel info + + - run: npm ci + + - run: npm ls -a + continue-on-error: true + + - run: | + eng/scripts/TypeSpec-Requirement.ps1 ` + -BaseCommitish HEAD^ ` + -TargetCommitish HEAD ` + -SpecType ${{ matrix.spec-type }} + shell: pwsh diff --git a/eng/pipelines/typespec-requirement.yml b/eng/pipelines/typespec-requirement.yml deleted file mode 100644 index 28b370ddb1db..000000000000 --- a/eng/pipelines/typespec-requirement.yml +++ /dev/null @@ -1,22 +0,0 @@ -trigger: none - -jobs: -- job: - strategy: - matrix: - data-plane: - SpecType: data-plane - resource-manager: - SpecType: resource-manager - - pool: - name: azsdk-pool-mms-ubuntu-2204-general - vmImage: ubuntu-22.04 - - steps: - - template: /eng/pipelines/templates/steps/npm-install.yml - - - pwsh: | - $(Build.SourcesDirectory)/eng/scripts/TypeSpec-Requirement.ps1 -SpecType $(SpecType) - displayName: TypeSpec Requirement - ignoreLASTEXITCODE: true diff --git a/eng/scripts/Logging-Functions.ps1 b/eng/scripts/Logging-Functions.ps1 index 3a407b283aa8..77ce43f7ef07 100644 --- a/eng/scripts/Logging-Functions.ps1 +++ b/eng/scripts/Logging-Functions.ps1 @@ -2,6 +2,10 @@ function Test-SupportsDevOpsLogging() { return ($null -ne $env:SYSTEM_TEAMPROJECTID) } +function Test-SupportsGitHubLogging() { + return ($null -ne $env:GITHUB_ACTIONS) +} + function LogInfo { Write-Host "$args" } @@ -10,6 +14,9 @@ function LogWarning { if (Test-SupportsDevOpsLogging) { Write-Host ("##vso[task.LogIssue type=warning;]$args" -replace "`n", "%0D%0A") } + elseif (Test-SupportsGitHubLogging) { + Write-Host ("::warning::$args" -replace "`n", "%0D%0A") + } else { Write-Warning "$args" } @@ -20,6 +27,9 @@ function LogErrorForFile($file, $errorString) if (Test-SupportsDevOpsLogging) { Write-Host ("##vso[task.logissue type=error;sourcepath=$file;linenumber=1;columnnumber=1;]$errorString" -replace "`n", "%0D%0A") } + elseif (Test-SupportsGitHubLogging) { + Write-Host ("::error file=$file,line=1,col=1::$errorString" -replace "`n", "%0D%0A") + } else { Write-Error "[Error in file $file]$errorString" } @@ -28,6 +38,9 @@ function LogError { if (Test-SupportsDevOpsLogging) { Write-Host ("##vso[task.LogIssue type=error;]$args" -replace "`n", "%0D%0A") } + elseif (Test-SupportsGitHubLogging) { + Write-Host ("::error::$args" -replace "`n", "%0D%0A") + } else { Write-Error "$args" } @@ -37,6 +50,9 @@ function LogDebug { if (Test-SupportsDevOpsLogging) { Write-Host "[debug]$args" } + elseif (Test-SupportsGitHubLogging) { + Write-Host "::debug::$args" + } else { Write-Debug "$args" } @@ -46,16 +62,23 @@ function LogGroupStart() { if (Test-SupportsDevOpsLogging) { Write-Host "##[group]$args" } + elseif (Test-SupportsGitHubLogging) { + Write-Host "::group::$args" + } } function LogGroupEnd() { if (Test-SupportsDevOpsLogging) { Write-Host "##[endgroup]" } + elseif (Test-SupportsGitHubLogging) { + Write-Host "::endgroup::" + } } function LogJobFailure() { if (Test-SupportsDevOpsLogging) { Write-Host "##vso[task.complete result=Failed;]" } + # No equivalent for GitHub Actions. Failure is only determined by nonzero exit code. } From 81a4ee5a83ae38620c0e1404793caffe005d26e4 Mon Sep 17 00:00:00 2001 From: YunsongB <39966392+YunsongB@users.noreply.github.com> Date: Fri, 28 Jun 2024 15:49:41 -0600 Subject: [PATCH 36/52] Add AOAI 2024-06-01 GA API version; (#29612) Co-authored-by: Yunsong Bai Co-authored-by: Travis Wilson <35748617+trrwilson@users.noreply.github.com> --- .../AzureOpenAI/authoring/readme.md | 21 + .../stable/2024-06-01/azureopenai.json | 1751 ++++++++++ .../stable/2024-06-01/azureopenai.yaml | 1181 +++++++ .../examples/cancel_finetuning_job.json | 25 + .../examples/cancel_finetuning_job.yaml | 23 + .../2024-06-01/examples/delete_file.json | 13 + .../2024-06-01/examples/delete_file.yaml | 9 + .../2024-06-01/examples/delete_finetune.json | 13 + .../2024-06-01/examples/delete_finetune.yaml | 9 + .../examples/delete_finetuning_job.json | 13 + .../examples/delete_finetuning_job.yaml | 9 + .../stable/2024-06-01/examples/get_file.json | 22 + .../stable/2024-06-01/examples/get_file.yaml | 17 + .../2024-06-01/examples/get_file_content.json | 14 + .../2024-06-01/examples/get_file_content.yaml | 9 + .../stable/2024-06-01/examples/get_files.json | 35 + .../stable/2024-06-01/examples/get_files.yaml | 26 + .../examples/get_finetuning_job.json | 30 + .../examples/get_finetuning_job.yaml | 25 + .../get_finetuning_job_checkpoints.json | 70 + .../get_finetuning_job_checkpoints.yaml | 54 + .../examples/get_finetuning_job_events.json | 43 + .../examples/get_finetuning_job_events.yaml | 33 + .../examples/get_finetuning_jobs.json | 35 + .../examples/get_finetuning_jobs.yaml | 27 + .../2024-06-01/examples/get_model_base.json | 31 + .../2024-06-01/examples/get_model_base.yaml | 25 + .../examples/get_model_finetune.json | 32 + .../examples/get_model_finetune.yaml | 24 + .../2024-06-01/examples/get_models.json | 54 + .../2024-06-01/examples/get_models.yaml | 41 + .../2024-06-01/examples/import_file.json | 28 + .../2024-06-01/examples/import_file.yaml | 48 + .../examples/post_finetuning_job.json | 30 + .../examples/post_finetuning_job.yaml | 30 + .../2024-06-01/examples/upload_file.json | 25 + .../2024-06-01/examples/upload_file.yaml | 21 + .../AzureOpenAI/inference/readme.md | 7 + .../examples/audio_transcription_object.json | 15 + .../examples/audio_transcription_object.yaml | 9 + .../examples/audio_transcription_text.json | 15 + .../examples/audio_transcription_text.yaml | 19 + .../examples/audio_translation_object.json | 16 + .../examples/audio_translation_object.yaml | 20 + .../examples/audio_translation_text.json | 15 + .../examples/audio_translation_text.yaml | 20 + .../2024-06-01/examples/chat_completions.json | 43 + .../2024-06-01/examples/chat_completions.yaml | 45 + ...hat_completions_azure_search_advanced.json | 96 + ...hat_completions_azure_search_advanced.yaml | 63 + ...chat_completions_azure_search_minimum.json | 63 + ...chat_completions_azure_search_minimum.yaml | 39 + .../examples/chat_completions_cosmos_db.json | 77 + .../examples/chat_completions_cosmos_db.yaml | 49 + .../2024-06-01/examples/completions.json | 38 + .../2024-06-01/examples/embeddings.json | 1566 +++++++++ .../2024-06-01/examples/embeddings.yaml | 1553 +++++++++ .../2024-06-01/examples/image_generation.json | 67 + .../2024-06-01/examples/image_generation.yaml | 46 + .../stable/2024-06-01/inference.json | 3082 +++++++++++++++++ .../stable/2024-06-01/inference.yaml | 2084 +++++++++++ 61 files changed, 12943 insertions(+) create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/azureopenai.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/azureopenai.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/cancel_finetuning_job.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/cancel_finetuning_job.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_file.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_file.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetune.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetune.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetuning_job.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetuning_job.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file_content.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file_content.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_files.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_files.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_checkpoints.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_checkpoints.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_events.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_events.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_jobs.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_jobs.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_base.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_base.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_finetune.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_finetune.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_models.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_models.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/import_file.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/import_file.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/post_finetuning_job.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/post_finetuning_job.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/upload_file.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/upload_file.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_object.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_object.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_text.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_text.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_object.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_object.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_text.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_text.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_advanced.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_advanced.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_minimum.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_minimum.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_cosmos_db.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_cosmos_db.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/completions.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/embeddings.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/embeddings.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/image_generation.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/image_generation.yaml create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/inference.json create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/inference.yaml diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md index 19fd3dad4d2a..baf6bd4a1ac4 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md @@ -308,3 +308,24 @@ directive: - suppress: IntegerTypeMustHaveFormat reason: API stewardship board recommend to use format "unixtime" which is not supported by linter at the moment. ``` + + +## AzureOpenAI 2024-06-01 +These settings apply only when `--tag=release_2024_06_01` is specified on the command line. + +``` yaml $(tag) == 'release_2024_06_01' +input-file: stable/2024-06-01/azureopenai.json +``` + +AutoRest-Linter Suppressions + +``` yaml +# Ignore autorest-linter issues that cannot be resolved without breaking compatibility to existing openai api +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + reason: Existing external API uses property names like n_epochs, created_at, not following naming/casing guidelines from azure. + - suppress: ValidFormats + reason: API stewardship board recommend to use format "unixtime" which is not supported by linter at the moment. + - suppress: IntegerTypeMustHaveFormat + reason: API stewardship board recommend to use format "unixtime" which is not supported by linter at the moment. +``` diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/azureopenai.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/azureopenai.json new file mode 100644 index 000000000000..2894b9a871c3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/azureopenai.json @@ -0,0 +1,1751 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure OpenAI API version 2024-06-01", + "description": "APIs for fine-tuning and managing deployments of OpenAI models.", + "version": "2024-06-01" + }, + "paths": { + "/files": { + "get": { + "tags": [ + "Files:" + ], + "summary": "Gets a list of all files owned by the Azure OpenAI resource.\r\nThese include user uploaded content like files with purpose \"fine-tune\" for training or validation of fine-tunes models\r\nas well as files that are generated by the service such as \"fine-tune-results\" which contains various metrics for the corresponding fine-tune job.", + "operationId": "Files_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "purpose", + "description": "Only return files with the given purpose.", + "type": "string", + "enum": [ + "fine-tune", + "fine-tune-results" + ], + "x-ms-enum": { + "name": "Purpose", + "modelAsString": true, + "values": [ + { + "value": "fine-tune", + "description": "This file contains training data for a fine tune job." + }, + { + "value": "fine-tune-results", + "description": "This file contains the results of a fine tune job." + } + ] + } + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FileList" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting all files owned by this account.": { + "$ref": "./examples/get_files.json" + } + } + }, + "post": { + "tags": [ + "Files:" + ], + "summary": "Creates a new file entity by uploading data from a local machine. Uploaded files can, for example, be used for training or evaluating fine-tuned models.", + "operationId": "Files_Upload", + "consumes": [ + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionQueryParameter" + }, + { + "in": "formData", + "name": "purpose", + "description": "The intended purpose of the uploaded documents. Use \"fine-tune\" for fine-tuning. This allows us to validate the format of the uploaded file.", + "required": true, + "type": "string", + "enum": [ + "fine-tune", + "fine-tune-results" + ], + "x-ms-enum": { + "name": "Purpose", + "modelAsString": true, + "values": [ + { + "value": "fine-tune", + "description": "This file contains training data for a fine tune job." + }, + { + "value": "fine-tune-results", + "description": "This file contains the results of a fine tune job." + } + ] + } + }, + { + "in": "formData", + "name": "file", + "description": "Gets or sets the file to upload into Azure OpenAI.", + "required": true, + "type": "file" + } + ], + "responses": { + "201": { + "description": "The file has been successfully created.", + "schema": { + "$ref": "#/definitions/File" + }, + "headers": { + "Location": { + "description": "The location of the newly created item.", + "type": "string", + "format": "url" + } + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Upload a file.": { + "$ref": "./examples/upload_file.json" + } + } + } + }, + "/files/{file-id}": { + "get": { + "tags": [ + "Files:" + ], + "summary": "Gets details for a single file specified by the given file-id including status, size, purpose, etc.", + "operationId": "Files_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "file-id", + "description": "The identifier of the file.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/File" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting a file.": { + "$ref": "./examples/get_file.json" + } + } + }, + "delete": { + "tags": [ + "Files:" + ], + "summary": "Deletes the file with the given file-id.\r\nDeletion is also allowed if a file was used, e.g., as training file in a fine-tune job.", + "operationId": "Files_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "file-id", + "description": "The identifier of the file.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "204": { + "description": "The file was successfully deleted." + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deleting a file.": { + "$ref": "./examples/delete_file.json" + } + } + } + }, + "/files/{file-id}/content": { + "get": { + "tags": [ + "Files:" + ], + "summary": "Gets the content of the file specified by the given file-id.\r\nFiles can be user uploaded content or generated by the service like result metrics of a fine-tune job.", + "operationId": "Files_GetContent", + "produces": [ + "application/octet-stream", + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "file-id", + "description": "The identifier of the file.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "type": "file" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting the file content.": { + "$ref": "./examples/get_file_content.json" + } + } + } + }, + "/files/import": { + "post": { + "tags": [ + "Files:" + ], + "summary": "Creates a new file entity by importing data from a provided url. Uploaded files can, for example, be used for training or evaluating fine-tuned models.", + "operationId": "Files_Import", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionQueryParameter" + }, + { + "in": "body", + "name": "fileImport", + "description": "The definition of the file to create including its purpose, the file name and the url of the file location.", + "required": true, + "schema": { + "$ref": "#/definitions/FileImport" + } + } + ], + "responses": { + "201": { + "description": "The file has been successfully created.", + "schema": { + "$ref": "#/definitions/File" + }, + "headers": { + "Location": { + "description": "The location of the newly created item.", + "type": "string", + "format": "url" + } + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Importing a file with a blob url as source.": { + "$ref": "./examples/import_file.json" + } + } + } + }, + "/fine_tuning/jobs": { + "get": { + "tags": [ + "Fine-tuning:" + ], + "summary": "Gets a list of all fine-tune jobs owned by the Azure OpenAI resource.\r\nThe details that are returned for each fine-tune job contain besides its identifier\r\nthe base model, training and validation files, hyper parameters, time stamps, status and events.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded.", + "operationId": "FineTuning_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "after", + "description": "Identifier for the last event from the previous pagination request.", + "type": "string" + }, + { + "in": "query", + "name": "limit", + "description": "Number of events to retrieve. Defaults to 20.", + "type": "integer", + "format": "int32", + "default": 20 + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FineTuningJobList" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting all fine tuning jobs owned by this account.": { + "$ref": "./examples/get_finetuning_jobs.json" + } + } + }, + "post": { + "tags": [ + "Fine-tuning:" + ], + "summary": "Creates a job that fine-tunes a specified model from a given training file.\r\nResponse includes details of the enqueued job including job status and hyper parameters.\r\nThe name of the fine-tuned model is added to the response once complete.", + "operationId": "FineTuning_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionQueryParameter" + }, + { + "in": "body", + "name": "fineTuningJob", + "description": "The specification of the fine-tuned model to create.\r\nRequired parameters are the base model and the training file to use.\r\nOptionally a validation file can be specified to compute validation metrics during training.\r\nHyper parameters will be set to default values or can be optionally specified.\r\nThese include batch size, learning rate multiplier, number of epochs and others.", + "required": true, + "schema": { + "$ref": "#/definitions/FineTuningJobCreation" + } + } + ], + "responses": { + "201": { + "description": "The fine tune has been successfully created.", + "schema": { + "$ref": "#/definitions/FineTuningJob" + }, + "headers": { + "Location": { + "description": "The location of the newly created item.", + "type": "string", + "format": "url" + } + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creating a fine tuning job.": { + "$ref": "./examples/post_finetuning_job.json" + } + } + } + }, + "/fine_tuning/jobs/{fine-tuning-job-id}": { + "get": { + "tags": [ + "Fine-tuning:" + ], + "summary": "Gets details for a single fine-tune job specified by the given fine-tune-id.\r\nThe details contain the base model, training and validation files, hyper parameters, time stamps, status and events.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded.", + "operationId": "FineTuning_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "fine-tuning-job-id", + "description": "The identifier of the fine-tune job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FineTuningJob" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting a fine tuning job.": { + "$ref": "./examples/get_finetuning_job.json" + } + } + }, + "delete": { + "tags": [ + "Fine-tuning:" + ], + "summary": "Deletes the fine-tune job specified by the given fine-tune-id.", + "operationId": "FineTuning_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "fine-tuning-job-id", + "description": "The identifier of the fine-tune job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "204": { + "description": "The fine tune was successfully deleted." + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deleting a fine tuning job.": { + "$ref": "./examples/delete_finetuning_job.json" + } + } + } + }, + "/fine_tuning/jobs/{fine-tuning-job-id}/events": { + "get": { + "tags": [ + "Fine-tuning:" + ], + "summary": "Gets the events for the fine-tune job specified by the given fine-tune-id.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded.", + "operationId": "FineTuning_GetEvents", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "fine-tuning-job-id", + "description": "The identifier of the fine-tune job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "after", + "description": "Identifier for the last event from the previous pagination request.", + "type": "string" + }, + { + "in": "query", + "name": "limit", + "description": "Number of events to retrieve. Defaults to 20.", + "type": "integer", + "format": "int32", + "default": 20 + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FineTuningJobEventList" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting events of a fine tuning job.": { + "$ref": "./examples/get_finetuning_job_events.json" + } + } + } + }, + "/fine_tuning/jobs/{fine-tuning-job-id}/checkpoints": { + "get": { + "tags": [ + "Fine-tuning:" + ], + "summary": "Gets the checkpoints for the fine-tune job specified by the given fine-tune-id.\r\nCheckpoints are created at the end of successful epochs during training.", + "operationId": "FineTuning_GetCheckpoints", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "fine-tuning-job-id", + "description": "The identifier of the fine-tune job.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "after", + "description": "Identifier for the last checkpoint ID from the previous pagination request.", + "type": "string" + }, + { + "in": "query", + "name": "limit", + "description": "Number of checkpoints to retrieve. Defaults to 10.", + "type": "integer", + "format": "int32", + "default": 10 + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/FineTuningJobCheckpointList" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting checkpoints of a fine tuning job.": { + "$ref": "./examples/get_finetuning_job_checkpoints.json" + } + } + } + }, + "/fine_tuning/jobs/{fine-tuning-job-id}/cancel": { + "post": { + "tags": [ + "Fine-tuning:" + ], + "summary": "Cancels the processing of the fine-tune job specified by the given fine-tune-id.", + "operationId": "FineTuning_Cancel", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "fine-tuning-job-id", + "description": "The identifier of the fine-tune job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "The fine tune has been successfully canceled", + "schema": { + "$ref": "#/definitions/FineTuningJob" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Canceling a fine tuning job.": { + "$ref": "./examples/cancel_finetuning_job.json" + } + } + } + }, + "/models": { + "get": { + "tags": [ + "Models:" + ], + "summary": "Gets a list of all models that are accessible by the Azure OpenAI resource.\r\nThese include base models as well as all successfully completed fine-tuned models owned by the Azure OpenAI resource.", + "operationId": "Models_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ModelList" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting all models owned by account.": { + "$ref": "./examples/get_models.json" + } + } + } + }, + "/models/{model-id}": { + "get": { + "tags": [ + "Models:" + ], + "summary": "Gets details for the model specified by the given modelId.", + "operationId": "Models_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "model-id", + "description": "The identifier of the model.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionQueryParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Model" + } + }, + "default": { + "description": "An error occurred.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Getting a base model.": { + "$ref": "./examples/get_model_base.json" + }, + "Getting a fine-tuned model.": { + "$ref": "./examples/get_model_finetune.json" + } + } + } + } + }, + "definitions": { + "Capabilities": { + "title": "Capabilities", + "description": "The capabilities of a base or fine tune model.", + "required": [ + "chat_completion", + "completion", + "embeddings", + "fine_tune", + "inference" + ], + "type": "object", + "properties": { + "fine_tune": { + "description": "A value indicating whether a model can be used for fine tuning.", + "type": "boolean" + }, + "inference": { + "description": "A value indicating whether a model can be deployed.", + "type": "boolean" + }, + "completion": { + "description": "A value indicating whether a model supports completion.", + "type": "boolean" + }, + "chat_completion": { + "description": "A value indicating whether a model supports chat completion.", + "type": "boolean" + }, + "embeddings": { + "description": "A value indicating whether a model supports embeddings.", + "type": "boolean" + } + } + }, + "Deprecation": { + "title": "Deprecation", + "description": "Defines the dates of deprecation for the different use cases of a model.\r\nUsually base models support 1 year of fine tuning after creation. Inference is typically supported 2 years after creation of base or\r\nfine tuned models. The exact dates are specified in the properties.", + "required": [ + "inference" + ], + "type": "object", + "properties": { + "fine_tune": { + "format": "unixtime", + "description": "The end date of fine tune support of this model. Will be `null` for fine tune models.", + "type": "integer" + }, + "inference": { + "format": "unixtime", + "description": "The end date of inference support of this model.", + "type": "integer" + } + } + }, + "Error": { + "title": "Error", + "description": "Error content as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).", + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "$ref": "#/definitions/ErrorCode" + }, + "message": { + "description": "The message of this error.", + "minLength": 1, + "type": "string" + }, + "target": { + "description": "The location where the error happened if available.", + "type": "string" + }, + "details": { + "description": "The error details if available.", + "type": "array", + "items": { + "$ref": "#/definitions/Error" + } + }, + "innererror": { + "$ref": "#/definitions/InnerError" + } + }, + "readOnly": true + }, + "ErrorCode": { + "title": "ErrorCode", + "description": "Error codes as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).", + "enum": [ + "conflict", + "invalidPayload", + "forbidden", + "notFound", + "unexpectedEntityState", + "itemDoesAlreadyExist", + "serviceUnavailable", + "internalFailure", + "quotaExceeded", + "jsonlValidationFailed", + "fileImportFailed", + "tooManyRequests", + "unauthorized", + "contentFilter" + ], + "type": "string", + "x-ms-enum": { + "name": "ErrorCode", + "modelAsString": true, + "values": [ + { + "value": "conflict", + "description": "The requested operation conflicts with the current resource state." + }, + { + "value": "invalidPayload", + "description": "The request data is invalid for this operation." + }, + { + "value": "forbidden", + "description": "The operation is forbidden for the current user/api key." + }, + { + "value": "notFound", + "description": "The resource is not found." + }, + { + "value": "unexpectedEntityState", + "description": "The operation cannot be executed in the current resource's state." + }, + { + "value": "itemDoesAlreadyExist", + "description": "The item does already exist." + }, + { + "value": "serviceUnavailable", + "description": "The service is currently not available." + }, + { + "value": "internalFailure", + "description": "Internal error. Please retry." + }, + { + "value": "quotaExceeded", + "description": "Quota exceeded." + }, + { + "value": "jsonlValidationFailed", + "description": "Validation of jsonl data failed." + }, + { + "value": "fileImportFailed", + "description": "Import of file failed." + }, + { + "value": "tooManyRequests", + "description": "Too many requests. Please retry later." + }, + { + "value": "unauthorized", + "description": "The current user/api key is not authorized for the operation." + }, + { + "value": "contentFilter", + "description": "Image generation failed as a result of our safety system." + } + ] + } + }, + "ErrorResponse": { + "title": "ErrorResponse", + "description": "Error response as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).", + "required": [ + "error" + ], + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/Error" + } + } + }, + "EventType": { + "title": "EventType", + "description": "Defines the severity of a content filter result.", + "enum": [ + "message", + "metrics" + ], + "type": "string", + "x-ms-enum": { + "name": "EventType", + "modelAsString": true, + "values": [ + { + "value": "message", + "description": "Event only contains human readable messages." + }, + { + "value": "metrics", + "description": "Event contains metrics." + } + ] + } + }, + "File": { + "title": "File", + "description": "A file is a document usable for training and validation. It can also be a service generated document with result details.", + "required": [ + "filename", + "purpose" + ], + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "created_at": { + "format": "unixtime", + "description": "A timestamp when this job or item was created (in unix epochs).", + "type": "integer", + "readOnly": true + }, + "id": { + "description": "The identity of this item.", + "type": "string", + "readOnly": true + }, + "status": { + "$ref": "#/definitions/FileState" + }, + "bytes": { + "format": "int64", + "description": "The size of this file when available (can be null). File sizes larger than 2^53-1 are not supported to ensure compatibility\r\nwith JavaScript integers.", + "type": "integer", + "readOnly": true + }, + "purpose": { + "$ref": "#/definitions/Purpose" + }, + "filename": { + "description": "The name of the file.", + "minLength": 1, + "type": "string" + }, + "status_details": { + "description": "The error message with details in case processing of this file failed.", + "type": "string", + "readOnly": true + } + } + }, + "FileImport": { + "title": "FileImport", + "description": "Defines a document to import from an external content url to be usable with Azure OpenAI.", + "required": [ + "content_url", + "filename", + "purpose" + ], + "type": "object", + "properties": { + "purpose": { + "$ref": "#/definitions/Purpose" + }, + "filename": { + "description": "The name of the [JSON Lines](https://jsonlines.readthedocs.io/en/latest/) file to be uploaded.\r\nIf the `purpose` is set to \"fine-tune\", each line is a JSON record with \"prompt\" and \"completion\" fields representing your training examples.", + "minLength": 1, + "type": "string" + }, + "content_url": { + "format": "url", + "description": "The url to download the document from (can be SAS url of a blob or any other external url accessible with a GET request).", + "type": "string" + } + } + }, + "FileList": { + "title": "FileList", + "description": "Represents a list of files.", + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "data": { + "description": "The list of items.", + "type": "array", + "items": { + "$ref": "#/definitions/File" + } + } + } + }, + "FileState": { + "title": "FileState", + "description": "The state of a file.", + "enum": [ + "uploaded", + "pending", + "running", + "processed", + "error", + "deleting", + "deleted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "FileState", + "modelAsString": true, + "values": [ + { + "value": "uploaded", + "description": "The file has been uploaded but it's not yet processed. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an inactive state." + }, + { + "value": "pending", + "description": "The operation was created and is not queued to be processed in the future. It can be categorized as an inactive state." + }, + { + "value": "running", + "description": "The operation has started to be processed. It can be categorized as an active state." + }, + { + "value": "processed", + "description": "The operation has successfully be processed and is ready for consumption. It can be categorized as a terminal state." + }, + { + "value": "error", + "description": "The operation has completed processing with a failure and cannot be further consumed. It can be categorized as a terminal state." + }, + { + "value": "deleting", + "description": "The entity is ni the process to be deleted. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an active state." + }, + { + "value": "deleted", + "description": "The entity has been deleted but may still be referenced by other entities predating the deletion. It can be categorized as a terminal state." + } + ] + } + }, + "FineTuningHyperParameters": { + "title": "FineTuningHyperParameters", + "description": "The hyper parameter settings used in a fine tune job.", + "type": "object", + "properties": { + "n_epochs": { + "format": "int32", + "description": "The number of epochs to train the model for. An epoch refers to one full cycle through the training dataset.", + "type": "integer" + }, + "batch_size": { + "format": "int32", + "description": "The batch size to use for training. The batch size is the number of training examples used to train a single forward and backward pass.\r\nIn general, we've found that larger batch sizes tend to work better for larger datasets.\r\nThe default value as well as the maximum value for this property are specific to a base model.", + "type": "integer" + }, + "learning_rate_multiplier": { + "format": "double", + "description": "The learning rate multiplier to use for training. The fine-tuning learning rate is the original learning rate used for pre-training multiplied by this value.\r\nLarger learning rates tend to perform better with larger batch sizes.\r\nWe recommend experimenting with values in the range 0.02 to 0.2 to see what produces the best results.", + "type": "number" + } + } + }, + "FineTuningJob": { + "title": "FineTuningJob", + "description": "Defines the values of a fine tune job.", + "required": [ + "model", + "training_file" + ], + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "created_at": { + "format": "unixtime", + "description": "A timestamp when this job or item was created (in unix epochs).", + "type": "integer", + "readOnly": true + }, + "id": { + "description": "The identity of this item.", + "type": "string", + "readOnly": true + }, + "status": { + "$ref": "#/definitions/FineTuningState" + }, + "model": { + "description": "The identifier (model-id) of the base model used for the fine-tune.", + "minLength": 1, + "type": "string" + }, + "fine_tuned_model": { + "description": "The identifier (model-id) of the resulting fine tuned model. This property is only populated for successfully completed fine-tune runs.\r\nUse this identifier to create a deployment for inferencing.", + "type": "string" + }, + "training_file": { + "description": "The file which is used for training.", + "minLength": 1, + "type": "string" + }, + "validation_file": { + "description": "The file which is used to evaluate the fine tuned model during training.", + "type": "string" + }, + "result_files": { + "description": "The result file identities (file-id) containing training and evaluation metrics in csv format.\r\nThe file is only available for successfully completed fine-tune runs.", + "type": "array", + "items": { + "type": "string" + } + }, + "finished_at": { + "format": "int32", + "description": "A timestamp when this job or item has finished successfully (in unix epochs).", + "type": "integer", + "readOnly": true + }, + "organisation_id": { + "description": "The organisation id of this fine tune job. Unused on Azure OpenAI; compatibility for OpenAI only.", + "type": "string" + }, + "trained_tokens": { + "format": "int32", + "description": "The total number of billable tokens processed by this fine tuning job.", + "type": "integer", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/FineTuningJobError" + }, + "estimated_finish": { + "format": "int32", + "description": "The Unix timestamp (in seconds) for when the fine-tuning job is estimated to finish. The value will be null if the fine-tuning job is not running.", + "type": "integer" + }, + "hyperparameters": { + "$ref": "#/definitions/FineTuningHyperParameters" + }, + "suffix": { + "description": "The suffix used to identify the fine-tuned model. The suffix can contain up to 40 characters (a-z, A-Z, 0-9,- and _) that will be added to your fine-tuned model name.", + "type": "string" + }, + "seed": { + "format": "int32", + "description": "The seed used for the finetuning job.", + "type": "integer" + } + } + }, + "FineTuningJobCheckpoint": { + "title": "FineTuningJobCheckpoint", + "required": [ + "created_at", + "fine_tuned_model_checkpoint", + "fine_tuning_job_id", + "metrics", + "step_number" + ], + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "id": { + "description": "The identity of this checkpoint.", + "type": "string", + "readOnly": true + }, + "created_at": { + "format": "unixtime", + "description": "The Unix timestamp (in seconds) for when the checkpoint was created.", + "type": "integer" + }, + "fine_tuned_model_checkpoint": { + "description": "The name of the fine-tuned checkpoint model that is created.", + "minLength": 1, + "type": "string" + }, + "step_number": { + "format": "int32", + "description": "The step number that the checkpoint was created at.", + "type": "integer" + }, + "metrics": { + "title": "Dictionary`2", + "description": "The metrics at the step number during the fine-tuning job.", + "type": "object", + "additionalProperties": { + "format": "double", + "type": "number" + } + }, + "fine_tuning_job_id": { + "description": "The name of the fine-tuning job that this checkpoint was created from..", + "minLength": 1, + "type": "string" + } + } + }, + "FineTuningJobCheckpointList": { + "title": "FineTuningJobCheckpointList", + "description": "Represents a list of checkpoints.", + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "data": { + "description": "The list of items.", + "type": "array", + "items": { + "$ref": "#/definitions/FineTuningJobCheckpoint" + } + }, + "has_more": { + "description": "A value indicating whether the list contains more elements than returned.", + "type": "boolean" + } + } + }, + "FineTuningJobCreation": { + "title": "FineTuningJobCreation", + "description": "Defines the values of a fine tune job.", + "required": [ + "model", + "training_file" + ], + "type": "object", + "properties": { + "model": { + "description": "The identifier (model-id) of the base model used for this fine-tune.", + "minLength": 1, + "type": "string" + }, + "training_file": { + "description": "The file identity (file-id) that is used for training this fine tuned model.", + "minLength": 1, + "type": "string" + }, + "validation_file": { + "description": "The file identity (file-id) that is used to evaluate the fine tuned model during training.", + "type": "string" + }, + "hyperparameters": { + "$ref": "#/definitions/FineTuningHyperParameters" + }, + "suffix": { + "description": "The suffix used to identify the fine-tuned model. The suffix can contain up to 40 characters (a-z, A-Z, 0-9,- and _) that will be added to your fine-tuned model name.", + "type": "string" + }, + "seed": { + "format": "int32", + "description": "The seed used for the finetuning job. Passing in the same seed and job parameters should produce the same results, but may differ in rare cases. If a seed is not specified, one will be generated for you.", + "type": "integer" + } + } + }, + "FineTuningJobError": { + "title": "FineTuningJobError", + "description": "For fine-tuning jobs that have failed, this will contain more information on the cause of the failure.", + "type": "object", + "properties": { + "code": { + "description": "The machine-readable error code..", + "type": "string" + }, + "message": { + "description": "The human-readable error message.", + "type": "string" + }, + "param": { + "description": "The parameter that was invalid, usually training_file or validation_file. This field will be null if the failure was not parameter-specific.", + "type": "string" + } + } + }, + "FineTuningJobEvent": { + "title": "FineTuningJobEvent", + "required": [ + "created_at", + "level", + "message", + "type" + ], + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "id": { + "description": "The identity of this event.", + "type": "string", + "readOnly": true + }, + "created_at": { + "format": "unixtime", + "description": "A timestamp when this event was created (in unix epochs).", + "type": "integer" + }, + "level": { + "$ref": "#/definitions/LogLevel" + }, + "message": { + "description": "The message describing the event. This can be a change of state, e.g., enqueued, started, failed or completed, or other events like uploaded results.", + "minLength": 1, + "type": "string" + }, + "type": { + "$ref": "#/definitions/EventType" + }, + "data": { + "description": "Machine readable data of this event." + } + } + }, + "FineTuningJobEventList": { + "title": "FineTuningJobEventList", + "description": "Represents a list of events.", + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "data": { + "description": "The list of items.", + "type": "array", + "items": { + "$ref": "#/definitions/FineTuningJobEvent" + } + }, + "has_more": { + "description": "A value indicating whether the list contains more elements than returned.", + "type": "boolean" + } + } + }, + "FineTuningJobList": { + "title": "FineTuningJobList", + "description": "Represents a list of fine tunes.", + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "data": { + "description": "The list of items.", + "type": "array", + "items": { + "$ref": "#/definitions/FineTuningJob" + } + }, + "has_more": { + "description": "A value indicating whether the list contains more elements than returned.", + "type": "boolean" + } + } + }, + "FineTuningState": { + "title": "FineTuningState", + "description": "The state of a finetunes object or fine tuning job.", + "enum": [ + "created", + "pending", + "running", + "succeeded", + "cancelled", + "failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "FineTuningState", + "modelAsString": true, + "values": [ + { + "value": "created", + "description": "The operation was created. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an inactive state." + }, + { + "value": "pending", + "description": "The operation is not yet queued to be processed in the future. It can be categorized as an inactive state." + }, + { + "value": "running", + "description": "The operation has started to be processed. It can be categorized as an active state." + }, + { + "value": "succeeded", + "description": "The operation has successfully be processed and is ready for consumption. It can be categorized as a terminal state." + }, + { + "value": "cancelled", + "description": "The operation has been cancelled and is incomplete. It can be categorized as a terminal state." + }, + { + "value": "failed", + "description": "The operation has completed processing with a failure and cannot be further consumed. It can be categorized as a terminal state." + } + ] + } + }, + "InnerError": { + "title": "InnerError", + "description": "Inner error as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).", + "type": "object", + "properties": { + "code": { + "$ref": "#/definitions/InnerErrorCode" + }, + "innererror": { + "$ref": "#/definitions/InnerError" + } + } + }, + "InnerErrorCode": { + "title": "InnerErrorCode", + "description": "Inner error codes as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).", + "enum": [ + "invalidPayload" + ], + "type": "string", + "x-ms-enum": { + "name": "InnerErrorCode", + "modelAsString": true, + "values": [ + { + "value": "invalidPayload", + "description": "The request data is invalid for this operation." + } + ] + } + }, + "LifeCycleStatus": { + "title": "LifeCycleStatus", + "description": "The life cycle status of a model.\r\nNote: A model can be promoted from \"preview\" to \"generally-available\", but never from \"generally-available\" to \"preview\".", + "enum": [ + "preview", + "generally-available" + ], + "type": "string", + "x-ms-enum": { + "name": "LifeCycleStatus", + "modelAsString": true, + "values": [ + { + "value": "preview", + "description": "Model is in preview and covered by the service preview terms." + }, + { + "value": "generally-available", + "description": "Model is generally available." + } + ] + } + }, + "LogLevel": { + "title": "LogLevel", + "description": "The verbosity level of an event.", + "enum": [ + "info", + "warning", + "error" + ], + "type": "string", + "x-ms-enum": { + "name": "LogLevel", + "modelAsString": true, + "values": [ + { + "value": "info", + "description": "This event is for information only." + }, + { + "value": "warning", + "description": "This event represents a mitigated issue." + }, + { + "value": "error", + "description": "This message represents a non recoverable issue." + } + ] + } + }, + "Model": { + "title": "Model", + "description": "A model is either a base model or the result of a successful fine tune job.", + "required": [ + "capabilities", + "deprecation", + "lifecycle_status" + ], + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "created_at": { + "format": "unixtime", + "description": "A timestamp when this job or item was created (in unix epochs).", + "type": "integer", + "readOnly": true + }, + "id": { + "description": "The identity of this item.", + "type": "string", + "readOnly": true + }, + "status": { + "$ref": "#/definitions/FineTuningState" + }, + "model": { + "description": "The base model identity (model-id) if this is a fine tune model; otherwise `null`.", + "type": "string" + }, + "fine_tune": { + "description": "The fine tune job identity (fine-tune-id) if this is a fine tune model; otherwise `null`.", + "type": "string" + }, + "capabilities": { + "$ref": "#/definitions/Capabilities" + }, + "lifecycle_status": { + "$ref": "#/definitions/LifeCycleStatus" + }, + "deprecation": { + "$ref": "#/definitions/Deprecation" + } + } + }, + "ModelList": { + "title": "ModelList", + "description": "Represents a list of models.", + "type": "object", + "properties": { + "object": { + "$ref": "#/definitions/TypeDiscriminator" + }, + "data": { + "description": "The list of items.", + "type": "array", + "items": { + "$ref": "#/definitions/Model" + } + } + } + }, + "OperationState": { + "title": "OperationState", + "description": "The state of a job or item.", + "enum": [ + "notRunning", + "running", + "succeeded", + "failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "OperationState", + "modelAsString": true, + "values": [ + { + "value": "notRunning", + "description": "The operation is not yet queued to be processed in the future." + }, + { + "value": "running", + "description": "The operation has started to be processed." + }, + { + "value": "succeeded", + "description": "The operation has successfully be processed and is ready for consumption." + }, + { + "value": "failed", + "description": "The operation has completed processing with a failure and cannot be further consumed." + } + ] + } + }, + "Purpose": { + "title": "Purpose", + "description": "The intended purpose of the uploaded documents. Use \"fine-tune\" for fine-tuning. This allows us to validate the format of the uploaded file.", + "enum": [ + "fine-tune", + "fine-tune-results" + ], + "type": "string", + "x-ms-enum": { + "name": "Purpose", + "modelAsString": true, + "values": [ + { + "value": "fine-tune", + "description": "This file contains training data for a fine tune job." + }, + { + "value": "fine-tune-results", + "description": "This file contains the results of a fine tune job." + } + ] + } + }, + "TypeDiscriminator": { + "title": "TypeDiscriminator", + "description": "Defines the type of an object.", + "enum": [ + "list", + "fine_tuning.job", + "file", + "fine_tuning.job.event", + "fine_tuning.job.checkpoint", + "model" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TypeDiscriminator", + "modelAsString": true, + "values": [ + { + "value": "list", + "description": "This object represents a list of other objects." + }, + { + "value": "fine_tuning.job", + "description": "This object represents a fine tune job." + }, + { + "value": "file", + "description": "This object represents a file." + }, + { + "value": "fine_tuning.job.event", + "description": "This object represents an event of a fine tuning job." + }, + { + "value": "fine_tuning.job.checkpoint", + "description": "This object represents a checkpoint of a fine tuning job." + }, + { + "value": "model", + "description": "This object represents a model (can be a base model or fine tune job result)." + } + ] + } + } + }, + "parameters": { + "endpoint": { + "in": "path", + "name": "endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://aoairesource.openai.azure.com. Replace \"aoairesource\" with your Azure OpenAI account name).", + "required": true, + "type": "string", + "format": "url", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + }, + "apiVersionQueryParameter": { + "in": "query", + "name": "api-version", + "description": "The requested API version.", + "required": true, + "type": "string", + "x-ms-client-default": "2024-06-01", + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "api-key": { + "type": "apiKey", + "name": "api-key", + "in": "header", + "description": "Provide your Cognitive Services Azure OpenAI account key here." + } + }, + "security": [ + { + "api-key": [ ] + } + ], + "schemes": [ + "https" + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}/openai", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/endpoint" + } + ] + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/azureopenai.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/azureopenai.yaml new file mode 100644 index 000000000000..b4750990036b --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/azureopenai.yaml @@ -0,0 +1,1181 @@ +swagger: '2.0' +info: + title: Azure OpenAI API version 2024-06-01 + description: APIs for fine-tuning and managing deployments of OpenAI models. + version: 2024-06-01 +paths: + /files: + get: + tags: + - 'Files:' + summary: "Gets a list of all files owned by the Azure OpenAI resource.\r\nThese include user uploaded content like files with purpose \"fine-tune\" for training or validation of fine-tunes models\r\nas well as files that are generated by the service such as \"fine-tune-results\" which contains various metrics for the corresponding fine-tune job." + operationId: Files_List + produces: + - application/json + parameters: + - in: query + name: purpose + description: Only return files with the given purpose. + type: string + enum: + - fine-tune + - fine-tune-results + x-ms-enum: + name: Purpose + modelAsString: true + values: + - value: fine-tune + description: This file contains training data for a fine tune job. + - value: fine-tune-results + description: This file contains the results of a fine tune job. + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + $ref: '#/definitions/FileList' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting all files owned by this account.: + $ref: ./examples/get_files.json + post: + tags: + - 'Files:' + summary: Creates a new file entity by uploading data from a local machine. Uploaded files can, for example, be used for training or evaluating fine-tuned models. + operationId: Files_Upload + consumes: + - multipart/form-data + produces: + - application/json + parameters: + - $ref: '#/parameters/apiVersionQueryParameter' + - in: formData + name: purpose + description: The intended purpose of the uploaded documents. Use "fine-tune" for fine-tuning. This allows us to validate the format of the uploaded file. + required: true + type: string + enum: + - fine-tune + - fine-tune-results + x-ms-enum: + name: Purpose + modelAsString: true + values: + - value: fine-tune + description: This file contains training data for a fine tune job. + - value: fine-tune-results + description: This file contains the results of a fine tune job. + - in: formData + name: file + description: Gets or sets the file to upload into Azure OpenAI. + required: true + type: file + responses: + '201': + description: The file has been successfully created. + schema: + $ref: '#/definitions/File' + headers: + Location: + description: The location of the newly created item. + type: string + format: url + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Upload a file.: + $ref: ./examples/upload_file.json + /files/{file-id}: + get: + tags: + - 'Files:' + summary: Gets details for a single file specified by the given file-id including status, size, purpose, etc. + operationId: Files_Get + produces: + - application/json + parameters: + - in: path + name: file-id + description: The identifier of the file. + required: true + type: string + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + $ref: '#/definitions/File' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting a file.: + $ref: ./examples/get_file.json + delete: + tags: + - 'Files:' + summary: "Deletes the file with the given file-id.\r\nDeletion is also allowed if a file was used, e.g., as training file in a fine-tune job." + operationId: Files_Delete + produces: + - application/json + parameters: + - in: path + name: file-id + description: The identifier of the file. + required: true + type: string + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '204': + description: The file was successfully deleted. + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Deleting a file.: + $ref: ./examples/delete_file.json + /files/{file-id}/content: + get: + tags: + - 'Files:' + summary: "Gets the content of the file specified by the given file-id.\r\nFiles can be user uploaded content or generated by the service like result metrics of a fine-tune job." + operationId: Files_GetContent + produces: + - application/octet-stream + - application/json + parameters: + - in: path + name: file-id + description: The identifier of the file. + required: true + type: string + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + type: file + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting the file content.: + $ref: ./examples/get_file_content.json + /files/import: + post: + tags: + - 'Files:' + summary: Creates a new file entity by importing data from a provided url. Uploaded files can, for example, be used for training or evaluating fine-tuned models. + operationId: Files_Import + consumes: + - application/json + produces: + - application/json + parameters: + - $ref: '#/parameters/apiVersionQueryParameter' + - in: body + name: fileImport + description: The definition of the file to create including its purpose, the file name and the url of the file location. + required: true + schema: + $ref: '#/definitions/FileImport' + responses: + '201': + description: The file has been successfully created. + schema: + $ref: '#/definitions/File' + headers: + Location: + description: The location of the newly created item. + type: string + format: url + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Importing a file with a blob url as source.: + $ref: ./examples/import_file.json + /fine_tuning/jobs: + get: + tags: + - 'Fine-tuning:' + summary: "Gets a list of all fine-tune jobs owned by the Azure OpenAI resource.\r\nThe details that are returned for each fine-tune job contain besides its identifier\r\nthe base model, training and validation files, hyper parameters, time stamps, status and events.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded." + operationId: FineTuning_List + produces: + - application/json + parameters: + - in: query + name: after + description: Identifier for the last event from the previous pagination request. + type: string + - in: query + name: limit + description: Number of events to retrieve. Defaults to 20. + type: integer + format: int32 + default: 20 + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + $ref: '#/definitions/FineTuningJobList' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting all fine tuning jobs owned by this account.: + $ref: ./examples/get_finetuning_jobs.json + post: + tags: + - 'Fine-tuning:' + summary: "Creates a job that fine-tunes a specified model from a given training file.\r\nResponse includes details of the enqueued job including job status and hyper parameters.\r\nThe name of the fine-tuned model is added to the response once complete." + operationId: FineTuning_Create + consumes: + - application/json + produces: + - application/json + parameters: + - $ref: '#/parameters/apiVersionQueryParameter' + - in: body + name: fineTuningJob + description: "The specification of the fine-tuned model to create.\r\nRequired parameters are the base model and the training file to use.\r\nOptionally a validation file can be specified to compute validation metrics during training.\r\nHyper parameters will be set to default values or can be optionally specified.\r\nThese include batch size, learning rate multiplier, number of epochs and others." + required: true + schema: + $ref: '#/definitions/FineTuningJobCreation' + responses: + '201': + description: The fine tune has been successfully created. + schema: + $ref: '#/definitions/FineTuningJob' + headers: + Location: + description: The location of the newly created item. + type: string + format: url + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Creating a fine tuning job.: + $ref: ./examples/post_finetuning_job.json + /fine_tuning/jobs/{fine-tuning-job-id}: + get: + tags: + - 'Fine-tuning:' + summary: "Gets details for a single fine-tune job specified by the given fine-tune-id.\r\nThe details contain the base model, training and validation files, hyper parameters, time stamps, status and events.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded." + operationId: FineTuning_Get + produces: + - application/json + parameters: + - in: path + name: fine-tuning-job-id + description: The identifier of the fine-tune job. + required: true + type: string + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + $ref: '#/definitions/FineTuningJob' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting a fine tuning job.: + $ref: ./examples/get_finetuning_job.json + delete: + tags: + - 'Fine-tuning:' + summary: Deletes the fine-tune job specified by the given fine-tune-id. + operationId: FineTuning_Delete + produces: + - application/json + parameters: + - in: path + name: fine-tuning-job-id + description: The identifier of the fine-tune job. + required: true + type: string + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '204': + description: The fine tune was successfully deleted. + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Deleting a fine tuning job.: + $ref: ./examples/delete_finetuning_job.json + /fine_tuning/jobs/{fine-tuning-job-id}/events: + get: + tags: + - 'Fine-tuning:' + summary: "Gets the events for the fine-tune job specified by the given fine-tune-id.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded." + operationId: FineTuning_GetEvents + produces: + - application/json + parameters: + - in: path + name: fine-tuning-job-id + description: The identifier of the fine-tune job. + required: true + type: string + - in: query + name: after + description: Identifier for the last event from the previous pagination request. + type: string + - in: query + name: limit + description: Number of events to retrieve. Defaults to 20. + type: integer + format: int32 + default: 20 + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + $ref: '#/definitions/FineTuningJobEventList' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting events of a fine tuning job.: + $ref: ./examples/get_finetuning_job_events.json + /fine_tuning/jobs/{fine-tuning-job-id}/checkpoints: + get: + tags: + - 'Fine-tuning:' + summary: "Gets the checkpoints for the fine-tune job specified by the given fine-tune-id.\r\nCheckpoints are created at the end of successful epochs during training." + operationId: FineTuning_GetCheckpoints + produces: + - application/json + parameters: + - in: path + name: fine-tuning-job-id + description: The identifier of the fine-tune job. + required: true + type: string + - in: query + name: after + description: Identifier for the last checkpoint ID from the previous pagination request. + type: string + - in: query + name: limit + description: Number of checkpoints to retrieve. Defaults to 10. + type: integer + format: int32 + default: 10 + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + $ref: '#/definitions/FineTuningJobCheckpointList' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting checkpoints of a fine tuning job.: + $ref: ./examples/get_finetuning_job_checkpoints.json + /fine_tuning/jobs/{fine-tuning-job-id}/cancel: + post: + tags: + - 'Fine-tuning:' + summary: Cancels the processing of the fine-tune job specified by the given fine-tune-id. + operationId: FineTuning_Cancel + produces: + - application/json + parameters: + - in: path + name: fine-tuning-job-id + description: The identifier of the fine-tune job. + required: true + type: string + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: The fine tune has been successfully canceled + schema: + $ref: '#/definitions/FineTuningJob' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Canceling a fine tuning job.: + $ref: ./examples/cancel_finetuning_job.json + /models: + get: + tags: + - 'Models:' + summary: "Gets a list of all models that are accessible by the Azure OpenAI resource.\r\nThese include base models as well as all successfully completed fine-tuned models owned by the Azure OpenAI resource." + operationId: Models_List + produces: + - application/json + parameters: + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + $ref: '#/definitions/ModelList' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting all models owned by account.: + $ref: ./examples/get_models.json + /models/{model-id}: + get: + tags: + - 'Models:' + summary: Gets details for the model specified by the given modelId. + operationId: Models_Get + produces: + - application/json + parameters: + - in: path + name: model-id + description: The identifier of the model. + required: true + type: string + - $ref: '#/parameters/apiVersionQueryParameter' + responses: + '200': + description: Success + schema: + $ref: '#/definitions/Model' + default: + description: An error occurred. + schema: + $ref: '#/definitions/ErrorResponse' + x-ms-examples: + Getting a base model.: + $ref: ./examples/get_model_base.json + Getting a fine-tuned model.: + $ref: ./examples/get_model_finetune.json +definitions: + Capabilities: + title: Capabilities + description: The capabilities of a base or fine tune model. + required: + - chat_completion + - completion + - embeddings + - fine_tune + - inference + type: object + properties: + fine_tune: + description: A value indicating whether a model can be used for fine tuning. + type: boolean + inference: + description: A value indicating whether a model can be deployed. + type: boolean + completion: + description: A value indicating whether a model supports completion. + type: boolean + chat_completion: + description: A value indicating whether a model supports chat completion. + type: boolean + embeddings: + description: A value indicating whether a model supports embeddings. + type: boolean + Deprecation: + title: Deprecation + description: "Defines the dates of deprecation for the different use cases of a model.\r\nUsually base models support 1 year of fine tuning after creation. Inference is typically supported 2 years after creation of base or\r\nfine tuned models. The exact dates are specified in the properties." + required: + - inference + type: object + properties: + fine_tune: + format: unixtime + description: The end date of fine tune support of this model. Will be `null` for fine tune models. + type: integer + inference: + format: unixtime + description: The end date of inference support of this model. + type: integer + Error: + title: Error + description: "Error content as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)." + required: + - code + - message + type: object + properties: + code: + $ref: '#/definitions/ErrorCode' + message: + description: The message of this error. + minLength: 1 + type: string + target: + description: The location where the error happened if available. + type: string + details: + description: The error details if available. + type: array + items: + $ref: '#/definitions/Error' + innererror: + $ref: '#/definitions/InnerError' + readOnly: true + ErrorCode: + title: ErrorCode + description: "Error codes as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)." + enum: + - conflict + - invalidPayload + - forbidden + - notFound + - unexpectedEntityState + - itemDoesAlreadyExist + - serviceUnavailable + - internalFailure + - quotaExceeded + - jsonlValidationFailed + - fileImportFailed + - tooManyRequests + - unauthorized + - contentFilter + type: string + x-ms-enum: + name: ErrorCode + modelAsString: true + values: + - value: conflict + description: The requested operation conflicts with the current resource state. + - value: invalidPayload + description: The request data is invalid for this operation. + - value: forbidden + description: The operation is forbidden for the current user/api key. + - value: notFound + description: The resource is not found. + - value: unexpectedEntityState + description: The operation cannot be executed in the current resource's state. + - value: itemDoesAlreadyExist + description: The item does already exist. + - value: serviceUnavailable + description: The service is currently not available. + - value: internalFailure + description: Internal error. Please retry. + - value: quotaExceeded + description: Quota exceeded. + - value: jsonlValidationFailed + description: Validation of jsonl data failed. + - value: fileImportFailed + description: Import of file failed. + - value: tooManyRequests + description: Too many requests. Please retry later. + - value: unauthorized + description: The current user/api key is not authorized for the operation. + - value: contentFilter + description: Image generation failed as a result of our safety system. + ErrorResponse: + title: ErrorResponse + description: "Error response as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)." + required: + - error + type: object + properties: + error: + $ref: '#/definitions/Error' + EventType: + title: EventType + description: Defines the severity of a content filter result. + enum: + - message + - metrics + type: string + x-ms-enum: + name: EventType + modelAsString: true + values: + - value: message + description: Event only contains human readable messages. + - value: metrics + description: Event contains metrics. + File: + title: File + description: A file is a document usable for training and validation. It can also be a service generated document with result details. + required: + - filename + - purpose + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + created_at: + format: unixtime + description: A timestamp when this job or item was created (in unix epochs). + type: integer + readOnly: true + id: + description: The identity of this item. + type: string + readOnly: true + status: + $ref: '#/definitions/FileState' + bytes: + format: int64 + description: "The size of this file when available (can be null). File sizes larger than 2^53-1 are not supported to ensure compatibility\r\nwith JavaScript integers." + type: integer + readOnly: true + purpose: + $ref: '#/definitions/Purpose' + filename: + description: The name of the file. + minLength: 1 + type: string + status_details: + description: The error message with details in case processing of this file failed. + type: string + readOnly: true + FileImport: + title: FileImport + description: Defines a document to import from an external content url to be usable with Azure OpenAI. + required: + - content_url + - filename + - purpose + type: object + properties: + purpose: + $ref: '#/definitions/Purpose' + filename: + description: "The name of the [JSON Lines](https://jsonlines.readthedocs.io/en/latest/) file to be uploaded.\r\nIf the `purpose` is set to \"fine-tune\", each line is a JSON record with \"prompt\" and \"completion\" fields representing your training examples." + minLength: 1 + type: string + content_url: + format: url + description: The url to download the document from (can be SAS url of a blob or any other external url accessible with a GET request). + type: string + FileList: + title: FileList + description: Represents a list of files. + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + data: + description: The list of items. + type: array + items: + $ref: '#/definitions/File' + FileState: + title: FileState + description: The state of a file. + enum: + - uploaded + - pending + - running + - processed + - error + - deleting + - deleted + type: string + readOnly: true + x-ms-enum: + name: FileState + modelAsString: true + values: + - value: uploaded + description: The file has been uploaded but it's not yet processed. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an inactive state. + - value: pending + description: The operation was created and is not queued to be processed in the future. It can be categorized as an inactive state. + - value: running + description: The operation has started to be processed. It can be categorized as an active state. + - value: processed + description: The operation has successfully be processed and is ready for consumption. It can be categorized as a terminal state. + - value: error + description: The operation has completed processing with a failure and cannot be further consumed. It can be categorized as a terminal state. + - value: deleting + description: The entity is ni the process to be deleted. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an active state. + - value: deleted + description: The entity has been deleted but may still be referenced by other entities predating the deletion. It can be categorized as a terminal state. + FineTuningHyperParameters: + title: FineTuningHyperParameters + description: The hyper parameter settings used in a fine tune job. + type: object + properties: + n_epochs: + format: int32 + description: The number of epochs to train the model for. An epoch refers to one full cycle through the training dataset. + type: integer + batch_size: + format: int32 + description: "The batch size to use for training. The batch size is the number of training examples used to train a single forward and backward pass.\r\nIn general, we've found that larger batch sizes tend to work better for larger datasets.\r\nThe default value as well as the maximum value for this property are specific to a base model." + type: integer + learning_rate_multiplier: + format: double + description: "The learning rate multiplier to use for training. The fine-tuning learning rate is the original learning rate used for pre-training multiplied by this value.\r\nLarger learning rates tend to perform better with larger batch sizes.\r\nWe recommend experimenting with values in the range 0.02 to 0.2 to see what produces the best results." + type: number + FineTuningJob: + title: FineTuningJob + description: Defines the values of a fine tune job. + required: + - model + - training_file + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + created_at: + format: unixtime + description: A timestamp when this job or item was created (in unix epochs). + type: integer + readOnly: true + id: + description: The identity of this item. + type: string + readOnly: true + status: + $ref: '#/definitions/FineTuningState' + model: + description: The identifier (model-id) of the base model used for the fine-tune. + minLength: 1 + type: string + fine_tuned_model: + description: "The identifier (model-id) of the resulting fine tuned model. This property is only populated for successfully completed fine-tune runs.\r\nUse this identifier to create a deployment for inferencing." + type: string + training_file: + description: The file which is used for training. + minLength: 1 + type: string + validation_file: + description: The file which is used to evaluate the fine tuned model during training. + type: string + result_files: + description: "The result file identities (file-id) containing training and evaluation metrics in csv format.\r\nThe file is only available for successfully completed fine-tune runs." + type: array + items: + type: string + finished_at: + format: int32 + description: A timestamp when this job or item has finished successfully (in unix epochs). + type: integer + readOnly: true + organisation_id: + description: The organisation id of this fine tune job. Unused on Azure OpenAI; compatibility for OpenAI only. + type: string + trained_tokens: + format: int32 + description: The total number of billable tokens processed by this fine tuning job. + type: integer + readOnly: true + error: + $ref: '#/definitions/FineTuningJobError' + estimated_finish: + format: int32 + description: The Unix timestamp (in seconds) for when the fine-tuning job is estimated to finish. The value will be null if the fine-tuning job is not running. + type: integer + hyperparameters: + $ref: '#/definitions/FineTuningHyperParameters' + suffix: + description: The suffix used to identify the fine-tuned model. The suffix can contain up to 40 characters (a-z, A-Z, 0-9,- and _) that will be added to your fine-tuned model name. + type: string + seed: + format: int32 + description: The seed used for the finetuning job. + type: integer + FineTuningJobCheckpoint: + title: FineTuningJobCheckpoint + required: + - created_at + - fine_tuned_model_checkpoint + - fine_tuning_job_id + - metrics + - step_number + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + id: + description: The identity of this checkpoint. + type: string + readOnly: true + created_at: + format: unixtime + description: The Unix timestamp (in seconds) for when the checkpoint was created. + type: integer + fine_tuned_model_checkpoint: + description: The name of the fine-tuned checkpoint model that is created. + minLength: 1 + type: string + step_number: + format: int32 + description: The step number that the checkpoint was created at. + type: integer + metrics: + title: Dictionary`2 + description: The metrics at the step number during the fine-tuning job. + type: object + additionalProperties: + format: double + type: number + fine_tuning_job_id: + description: The name of the fine-tuning job that this checkpoint was created from.. + minLength: 1 + type: string + FineTuningJobCheckpointList: + title: FineTuningJobCheckpointList + description: Represents a list of checkpoints. + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + data: + description: The list of items. + type: array + items: + $ref: '#/definitions/FineTuningJobCheckpoint' + has_more: + description: A value indicating whether the list contains more elements than returned. + type: boolean + FineTuningJobCreation: + title: FineTuningJobCreation + description: Defines the values of a fine tune job. + required: + - model + - training_file + type: object + properties: + model: + description: The identifier (model-id) of the base model used for this fine-tune. + minLength: 1 + type: string + training_file: + description: The file identity (file-id) that is used for training this fine tuned model. + minLength: 1 + type: string + validation_file: + description: The file identity (file-id) that is used to evaluate the fine tuned model during training. + type: string + hyperparameters: + $ref: '#/definitions/FineTuningHyperParameters' + suffix: + description: The suffix used to identify the fine-tuned model. The suffix can contain up to 40 characters (a-z, A-Z, 0-9,- and _) that will be added to your fine-tuned model name. + type: string + seed: + format: int32 + description: The seed used for the finetuning job. Passing in the same seed and job parameters should produce the same results, but may differ in rare cases. If a seed is not specified, one will be generated for you. + type: integer + FineTuningJobError: + title: FineTuningJobError + description: 'For fine-tuning jobs that have failed, this will contain more information on the cause of the failure.' + type: object + properties: + code: + description: The machine-readable error code.. + type: string + message: + description: The human-readable error message. + type: string + param: + description: 'The parameter that was invalid, usually training_file or validation_file. This field will be null if the failure was not parameter-specific.' + type: string + FineTuningJobEvent: + title: FineTuningJobEvent + required: + - created_at + - level + - message + - type + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + id: + description: The identity of this event. + type: string + readOnly: true + created_at: + format: unixtime + description: A timestamp when this event was created (in unix epochs). + type: integer + level: + $ref: '#/definitions/LogLevel' + message: + description: The message describing the event. This can be a change of state, e.g., enqueued, started, failed or completed, or other events like uploaded results. + minLength: 1 + type: string + type: + $ref: '#/definitions/EventType' + data: + description: Machine readable data of this event. + FineTuningJobEventList: + title: FineTuningJobEventList + description: Represents a list of events. + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + data: + description: The list of items. + type: array + items: + $ref: '#/definitions/FineTuningJobEvent' + has_more: + description: A value indicating whether the list contains more elements than returned. + type: boolean + FineTuningJobList: + title: FineTuningJobList + description: Represents a list of fine tunes. + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + data: + description: The list of items. + type: array + items: + $ref: '#/definitions/FineTuningJob' + has_more: + description: A value indicating whether the list contains more elements than returned. + type: boolean + FineTuningState: + title: FineTuningState + description: The state of a finetunes object or fine tuning job. + enum: + - created + - pending + - running + - succeeded + - cancelled + - failed + type: string + readOnly: true + x-ms-enum: + name: FineTuningState + modelAsString: true + values: + - value: created + description: The operation was created. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an inactive state. + - value: pending + description: The operation is not yet queued to be processed in the future. It can be categorized as an inactive state. + - value: running + description: The operation has started to be processed. It can be categorized as an active state. + - value: succeeded + description: The operation has successfully be processed and is ready for consumption. It can be categorized as a terminal state. + - value: cancelled + description: The operation has been cancelled and is incomplete. It can be categorized as a terminal state. + - value: failed + description: The operation has completed processing with a failure and cannot be further consumed. It can be categorized as a terminal state. + InnerError: + title: InnerError + description: "Inner error as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)." + type: object + properties: + code: + $ref: '#/definitions/InnerErrorCode' + innererror: + $ref: '#/definitions/InnerError' + InnerErrorCode: + title: InnerErrorCode + description: "Inner error codes as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)." + enum: + - invalidPayload + type: string + x-ms-enum: + name: InnerErrorCode + modelAsString: true + values: + - value: invalidPayload + description: The request data is invalid for this operation. + LifeCycleStatus: + title: LifeCycleStatus + description: "The life cycle status of a model.\r\nNote: A model can be promoted from \"preview\" to \"generally-available\", but never from \"generally-available\" to \"preview\"." + enum: + - preview + - generally-available + type: string + x-ms-enum: + name: LifeCycleStatus + modelAsString: true + values: + - value: preview + description: Model is in preview and covered by the service preview terms. + - value: generally-available + description: Model is generally available. + LogLevel: + title: LogLevel + description: The verbosity level of an event. + enum: + - info + - warning + - error + type: string + x-ms-enum: + name: LogLevel + modelAsString: true + values: + - value: info + description: This event is for information only. + - value: warning + description: This event represents a mitigated issue. + - value: error + description: This message represents a non recoverable issue. + Model: + title: Model + description: A model is either a base model or the result of a successful fine tune job. + required: + - capabilities + - deprecation + - lifecycle_status + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + created_at: + format: unixtime + description: A timestamp when this job or item was created (in unix epochs). + type: integer + readOnly: true + id: + description: The identity of this item. + type: string + readOnly: true + status: + $ref: '#/definitions/FineTuningState' + model: + description: The base model identity (model-id) if this is a fine tune model; otherwise `null`. + type: string + fine_tune: + description: The fine tune job identity (fine-tune-id) if this is a fine tune model; otherwise `null`. + type: string + capabilities: + $ref: '#/definitions/Capabilities' + lifecycle_status: + $ref: '#/definitions/LifeCycleStatus' + deprecation: + $ref: '#/definitions/Deprecation' + ModelList: + title: ModelList + description: Represents a list of models. + type: object + properties: + object: + $ref: '#/definitions/TypeDiscriminator' + data: + description: The list of items. + type: array + items: + $ref: '#/definitions/Model' + OperationState: + title: OperationState + description: The state of a job or item. + enum: + - notRunning + - running + - succeeded + - failed + type: string + readOnly: true + x-ms-enum: + name: OperationState + modelAsString: true + values: + - value: notRunning + description: The operation is not yet queued to be processed in the future. + - value: running + description: The operation has started to be processed. + - value: succeeded + description: The operation has successfully be processed and is ready for consumption. + - value: failed + description: The operation has completed processing with a failure and cannot be further consumed. + Purpose: + title: Purpose + description: The intended purpose of the uploaded documents. Use "fine-tune" for fine-tuning. This allows us to validate the format of the uploaded file. + enum: + - fine-tune + - fine-tune-results + type: string + x-ms-enum: + name: Purpose + modelAsString: true + values: + - value: fine-tune + description: This file contains training data for a fine tune job. + - value: fine-tune-results + description: This file contains the results of a fine tune job. + TypeDiscriminator: + title: TypeDiscriminator + description: Defines the type of an object. + enum: + - list + - fine_tuning.job + - file + - fine_tuning.job.event + - fine_tuning.job.checkpoint + - model + type: string + readOnly: true + x-ms-enum: + name: TypeDiscriminator + modelAsString: true + values: + - value: list + description: This object represents a list of other objects. + - value: fine_tuning.job + description: This object represents a fine tune job. + - value: file + description: This object represents a file. + - value: fine_tuning.job.event + description: This object represents an event of a fine tuning job. + - value: fine_tuning.job.checkpoint + description: This object represents a checkpoint of a fine tuning job. + - value: model + description: This object represents a model (can be a base model or fine tune job result). +parameters: + endpoint: + in: path + name: endpoint + description: 'Supported Cognitive Services endpoints (protocol and hostname, for example: https://aoairesource.openai.azure.com. Replace "aoairesource" with your Azure OpenAI account name).' + required: true + type: string + format: url + x-ms-skip-url-encoding: true + x-ms-parameter-location: client + apiVersionQueryParameter: + in: query + name: api-version + description: The requested API version. + required: true + type: string + x-ms-client-default: 2024-06-01 + x-ms-parameter-location: client +securityDefinitions: + api-key: + type: apiKey + name: api-key + in: header + description: Provide your Cognitive Services Azure OpenAI account key here. +security: + - api-key: [ ] +schemes: + - https +x-ms-parameterized-host: + hostTemplate: '{endpoint}/openai' + useSchemePrefix: false + parameters: + - $ref: '#/parameters/endpoint' \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/cancel_finetuning_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/cancel_finetuning_job.json new file mode 100644 index 000000000000..315a96fcb4ee --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/cancel_finetuning_job.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "fine-tuning-job-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "hyperparameters": { + "n_epochs": 2 + }, + "model": "curie", + "training_file": "file-181a1cbdcdcf4677ada87f63a0928099", + "finished_at": 1646127311, + "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "status": "canceled", + "created_at": 1646126127, + "object": "fine_tuning.job" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/cancel_finetuning_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/cancel_finetuning_job.yaml new file mode 100644 index 000000000000..a965dc07d407 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/cancel_finetuning_job.yaml @@ -0,0 +1,23 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + fine-tuning-job-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f +responses: + 200: + headers: {} + body: + hyperparameters: + n_epochs: 2 + suffix: + status: cancelled + model: curie + fine_tuned_model: + training_file: file-181a1cbdcdcf4677ada87f63a0928099 + validation_file: + result_files: + finished_at: 1646127311 + organisation_id: + id: ft-72a2792ef7d24ba7b82c7fe4a37e379f + created_at: 1646126127 + object: fine_tuning.job diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_file.json new file mode 100644 index 000000000000..e2cb4576d119 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_file.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "file-id": "file-181a1cbdcdcf4677ada87f63a0928099" + }, + "responses": { + "204": { + "headers": {} + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_file.yaml new file mode 100644 index 000000000000..ecfb71d5d86b --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_file.yaml @@ -0,0 +1,9 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + file-id: file-181a1cbdcdcf4677ada87f63a0928099 +responses: + 204: + headers: {} + body: diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetune.json new file mode 100644 index 000000000000..fdab567f8227 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetune.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "fine-tune-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f" + }, + "responses": { + "204": { + "headers": {} + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetune.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetune.yaml new file mode 100644 index 000000000000..f7f85646a69a --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetune.yaml @@ -0,0 +1,9 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + fine-tune-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f +responses: + 204: + headers: {} + body: diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetuning_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetuning_job.json new file mode 100644 index 000000000000..acd69500cbf9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetuning_job.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "fine-tuning-job-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f" + }, + "responses": { + "204": { + "headers": {} + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetuning_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetuning_job.yaml new file mode 100644 index 000000000000..b3531ad63f47 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/delete_finetuning_job.yaml @@ -0,0 +1,9 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + fine-tuning-job-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f +responses: + 204: + headers: {} + body: diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file.json new file mode 100644 index 000000000000..53e6639a3f20 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "file-id": "file-181a1cbdcdcf4677ada87f63a0928099" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "bytes": 140, + "purpose": "fine-tune", + "filename": "puppy.jsonl", + "id": "file-181a1cbdcdcf4677ada87f63a0928099", + "status": "succeeded", + "created_at": 1646126127, + "object": "file" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file.yaml new file mode 100644 index 000000000000..f6923724b95c --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file.yaml @@ -0,0 +1,17 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + file-id: file-181a1cbdcdcf4677ada87f63a0928099 +responses: + 200: + headers: {} + body: + status_details: + status: processed + bytes: 140 + purpose: fine-tune + filename: puppy.jsonl + id: file-181a1cbdcdcf4677ada87f63a0928099 + created_at: 1646126127 + object: file diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file_content.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file_content.json new file mode 100644 index 000000000000..6e8b76e2c187 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file_content.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "file-id": "file-181a1cbdcdcf4677ada87f63a0928099" + }, + "responses": { + "200": { + "headers": {}, + "body": "raw file content" + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file_content.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file_content.yaml new file mode 100644 index 000000000000..555ce3642f94 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_file_content.yaml @@ -0,0 +1,9 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + file-id: file-181a1cbdcdcf4677ada87f63a0928099 +responses: + 200: + headers: {} + body: raw file content diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_files.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_files.json new file mode 100644 index 000000000000..42534afd0aa4 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_files.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "data": [ + { + "bytes": 140, + "purpose": "fine-tune", + "filename": "puppy.jsonl", + "id": "file-181a1cbdcdcf4677ada87f63a0928099", + "status": "succeeded", + "created_at": 1646126127, + "object": "file" + }, + { + "bytes": 32423, + "purpose": "fine-tune-results", + "filename": "results.csv", + "id": "file-181a1cbdcdcf4677ada87f63a0928099", + "status": "succeeded", + "created_at": 1646126127, + "object": "file" + } + ], + "object": "list" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_files.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_files.yaml new file mode 100644 index 000000000000..060684e31ddd --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_files.yaml @@ -0,0 +1,26 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 +responses: + 200: + headers: {} + body: + data: + - status_details: + status: processed + bytes: 140 + purpose: fine-tune + filename: puppy.jsonl + id: file-181a1cbdcdcf4677ada87f63a0928099 + created_at: 1646126127 + object: file + - status_details: + status: processed + bytes: 32423 + purpose: fine-tune-results + filename: results.csv + id: file-181a1cbdcdcf4677ada87f63a0928099 + created_at: 1646126127 + object: file + object: list diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job.json new file mode 100644 index 000000000000..88fa4ce113c2 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "fine-tuning-job-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "hyperparameters": { + "n_epochs": 2 + }, + "model": "curie", + "fine_tuned_model": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "training_file": "file-181a1cbdcdcf4677ada87f63a0928099", + "result_files": [ + "file-181a1cbdcdcf4677ada87f63a0928099" + ], + "finished_at": 1646127311, + "trained_tokens": 2342, + "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "status": "succeeded", + "created_at": 1646126127, + "object": "fine_tuning.job" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job.yaml new file mode 100644 index 000000000000..69114d6af8bd --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job.yaml @@ -0,0 +1,25 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + fine-tuning-job-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f +responses: + 200: + headers: {} + body: + hyperparameters: + n_epochs: 2 + suffix: + status: succeeded + model: curie + fine_tuned_model: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f + training_file: file-181a1cbdcdcf4677ada87f63a0928099 + validation_file: + result_files: + - file-181a1cbdcdcf4677ada87f63a0928099 + finished_at: 1646127311 + organisation_id: + trained_tokens: 2342 + id: ft-72a2792ef7d24ba7b82c7fe4a37e379f + created_at: 1646126127 + object: fine_tuning.job diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_checkpoints.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_checkpoints.json new file mode 100644 index 000000000000..6d7d387cf3dd --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_checkpoints.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "fine-tuning-job-id": "ftjob-72a2792ef7d24ba7b82c7fe4a37e379f" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "has_more": false, + "data": [ + { + "id": "ftckpt_qtZ5Gyk4BLq1SfLFWp3RtO3P", + "created_at": 1646126127, + "fine_tuned_model_checkpoint": "gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-10", + "step_number": 10, + "metrics": { + "step": 10, + "train_loss": 0.478, + "train_mean_token_accuracy": 0.924, + "valid_loss": 10.112, + "valid_mean_token_accuracy": 0.145, + "full_valid_loss": 0.567, + "full_valid_mean_token_accuracy": 0.944 + }, + "fine_tuning_job_id": "ftjob-72a2792ef7d24ba7b82c7fe4a37e379f", + "object": "fine_tuning.job.checkpoint" + }, + { + "id": "ftckpt_frtXDR2453C4FG67t03MLPs5", + "created_at": 1646126137, + "fine_tuned_model_checkpoint": "gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-20", + "step_number": 20, + "metrics": { + "step": 20, + "train_loss": 0.355, + "train_mean_token_accuracy": 0.947, + "valid_loss": 11.32, + "valid_mean_token_accuracy": 0.122, + "full_valid_loss": 0.317, + "full_valid_mean_token_accuracy": 0.955 + }, + "fine_tuning_job_id": "ftjob-72a2792ef7d24ba7b82c7fe4a37e379f", + "object": "fine_tuning.job.checkpoint" + }, + { + "id": "ftckpt_agLk6Gio560ORp14gl123fgd", + "created_at": 1646126147, + "fine_tuned_model_checkpoint": "gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-30", + "step_number": 30, + "metrics": { + "step": 30, + "train_loss": 0.155, + "train_mean_token_accuracy": 0.975, + "valid_loss": 9.31, + "valid_mean_token_accuracy": 0.092, + "full_valid_loss": 0.114, + "full_valid_mean_token_accuracy": 0.963 + }, + "fine_tuning_job_id": "ftjob-72a2792ef7d24ba7b82c7fe4a37e379f", + "object": "fine_tuning.job.checkpoint" + } + ], + "object": "list" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_checkpoints.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_checkpoints.yaml new file mode 100644 index 000000000000..d4254bd80195 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_checkpoints.yaml @@ -0,0 +1,54 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + fine-tuning-job-id: ftjob-72a2792ef7d24ba7b82c7fe4a37e379f +responses: + 200: + headers: {} + body: + has_more: false + data: + - id: ftckpt_qtZ5Gyk4BLq1SfLFWp3RtO3P + created_at: 1646126127 + fineTunedModelCheckpoint: gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-10 + stepNumber: 10 + metrics: + step: 10 + train_loss: 0.478 + train_mean_token_accuracy: 0.924 + valid_loss: 10.112 + valid_mean_token_accuracy: 0.145 + full_valid_loss: 0.567 + full_valid_mean_token_accuracy: 0.944 + fineTuningJobId: ftjob-72a2792ef7d24ba7b82c7fe4a37e379f + object: fine_tuning.job.checkpoint + - id: ftckpt_frtXDR2453C4FG67t03MLPs5 + created_at: 1646126137 + fineTunedModelCheckpoint: gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-20 + stepNumber: 20 + metrics: + step: 20 + train_loss: 0.355 + train_mean_token_accuracy: 0.947 + valid_loss: 11.32 + valid_mean_token_accuracy: 0.122 + full_valid_loss: 0.317 + full_valid_mean_token_accuracy: 0.955 + fineTuningJobId: ftjob-72a2792ef7d24ba7b82c7fe4a37e379f + object: fine_tuning.job.checkpoint + - id: ftckpt_agLk6Gio560ORp14gl123fgd + created_at: 1646126147 + fineTunedModelCheckpoint: gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-30 + stepNumber: 30 + metrics: + step: 30 + train_loss: 0.155 + train_mean_token_accuracy: 0.975 + valid_loss: 9.31 + valid_mean_token_accuracy: 0.092 + full_valid_loss: 0.114 + full_valid_mean_token_accuracy: 0.963 + fineTuningJobId: ftjob-72a2792ef7d24ba7b82c7fe4a37e379f + object: fine_tuning.job.checkpoint + object: list diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_events.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_events.json new file mode 100644 index 000000000000..7862a0cada4e --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_events.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "fine-tuning-job-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "has_more": false, + "data": [ + { + "id": "ft-event-363dcd7cb4c74539bc53293c1dceef05", + "created_at": 1646126127, + "level": "info", + "message": "Job enqueued. Waiting for jobs ahead to complete.", + "type": "message", + "object": "fine_tuning.job.event" + }, + { + "id": "ft-event-8c2a44999790437cb3230e543fa2cf0f", + "created_at": 1646126169, + "level": "info", + "message": "Job started.", + "type": "message", + "object": "fine_tuning.job.event" + }, + { + "id": "ft-event-2d47d651d2f3484c8187c88c00078147", + "created_at": 1646126192, + "level": "info", + "message": "Job succeeded.", + "type": "message", + "object": "fine_tuning.job.event" + } + ], + "object": "list" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_events.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_events.yaml new file mode 100644 index 000000000000..51eaa205e06c --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_job_events.yaml @@ -0,0 +1,33 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + fine-tuning-job-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f +responses: + 200: + headers: {} + body: + has_more: false + data: + - id: ftevent-363dcd7cb4c74539bc53293c1dceef05 + created_at: 1646126127 + level: Info + message: Job enqueued. Waiting for jobs ahead to complete. + type: message + data: + object: fine_tuning.job.event + - id: ftevent-8c2a44999790437cb3230e543fa2cf0f + created_at: 1646126169 + level: Info + message: Job started. + type: message + data: + object: fine_tuning.job.event + - id: ftevent-2d47d651d2f3484c8187c88c00078147 + created_at: 1646126192 + level: Info + message: Job succeeded. + type: message + data: + object: fine_tuning.job.event + object: list diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_jobs.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_jobs.json new file mode 100644 index 000000000000..ff39ee0e0cf8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_jobs.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "has_more": false, + "data": [ + { + "hyperparameters": { + "n_epochs": 2 + }, + "model": "curie", + "fine_tuned_model": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "training_file": "file-181a1cbdcdcf4677ada87f63a0928099", + "result_files": [ + "file-181a1cbdcdcf4677ada87f63a0928099" + ], + "finished_at": 1646127311, + "trained_tokens": 2342, + "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "status": "succeeded", + "created_at": 1646126127, + "object": "fine_tuning.job" + } + ], + "object": "list" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_jobs.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_jobs.yaml new file mode 100644 index 000000000000..9a083320f2cd --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_finetuning_jobs.yaml @@ -0,0 +1,27 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 +responses: + 200: + headers: {} + body: + has_more: false + data: + - hyperparameters: + n_epochs: 2 + suffix: + status: succeeded + model: curie + fine_tuned_model: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f + training_file: file-181a1cbdcdcf4677ada87f63a0928099 + validation_file: + result_files: + - file-181a1cbdcdcf4677ada87f63a0928099 + finished_at: 1646127311 + organisation_id: + trained_tokens: 2342 + id: ft-72a2792ef7d24ba7b82c7fe4a37e379f + created_at: 1646126127 + object: fine_tuning.job + object: list diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_base.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_base.json new file mode 100644 index 000000000000..6544a3f38430 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_base.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "model-id": "curie" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "capabilities": { + "fine_tune": true, + "inference": true, + "completion": true, + "chat_completion": false, + "embeddings": false + }, + "lifecycle_status": "generally-available", + "deprecation": { + "fine_tune": 1677662127, + "inference": 1709284527 + }, + "id": "curie", + "status": "succeeded", + "created_at": 1646126127, + "object": "model" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_base.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_base.yaml new file mode 100644 index 000000000000..e348a4e069d6 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_base.yaml @@ -0,0 +1,25 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + model-id: curie +responses: + 200: + headers: {} + body: + status: succeeded + model: + fine_tune: + capabilities: + fine_tune: true + inference: true + completion: true + chat_completion: false + embeddings: false + lifecycle_status: generally-available + deprecation: + fine_tune: 1677662127 + inference: 1709284527 + id: curie + created_at: 1646126127 + object: model diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_finetune.json new file mode 100644 index 000000000000..bc19e74f0bcf --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_finetune.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "model-id": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "model": "curie", + "fine_tune": "ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "capabilities": { + "fine_tune": false, + "inference": true, + "completion": true, + "chat_completion": false, + "embeddings": false + }, + "lifecycle_status": "generally-available", + "deprecation": { + "inference": 1709284527 + }, + "id": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "status": "succeeded", + "created_at": 1646126127, + "object": "model" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_finetune.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_finetune.yaml new file mode 100644 index 000000000000..0bd0aa608b5c --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_model_finetune.yaml @@ -0,0 +1,24 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 + model-id: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f +responses: + 200: + headers: {} + body: + status: succeeded + model: curie + fine_tune: ft-72a2792ef7d24ba7b82c7fe4a37e379f + capabilities: + fine_tune: false + inference: true + completion: true + chat_completion: false + embeddings: false + lifecycle_status: generally-available + deprecation: + inference: 1709284527 + id: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f + created_at: 1646126127 + object: model diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_models.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_models.json new file mode 100644 index 000000000000..9f46dc3895e3 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_models.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "data": [ + { + "capabilities": { + "fine_tune": true, + "inference": true, + "completion": true, + "chat_completion": false, + "embeddings": false + }, + "lifecycle_status": "generally-available", + "deprecation": { + "fine_tune": 1677662127, + "inference": 1709284527 + }, + "id": "curie", + "status": "succeeded", + "created_at": 1646126127, + "object": "model" + }, + { + "model": "curie", + "fine_tune": "ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "capabilities": { + "fine_tune": false, + "inference": true, + "completion": true, + "chat_completion": false, + "embeddings": false + }, + "lifecycle_status": "generally-available", + "deprecation": { + "inference": 1709284527 + }, + "id": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "status": "succeeded", + "created_at": 1646126127, + "object": "model" + } + ], + "object": "list" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_models.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_models.yaml new file mode 100644 index 000000000000..0710003c4767 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/get_models.yaml @@ -0,0 +1,41 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2024-06-01 +responses: + 200: + headers: {} + body: + data: + - status: succeeded + model: + fine_tune: + capabilities: + fine_tune: true + inference: true + completion: true + chat_completion: false + embeddings: false + lifecycle_status: generally-available + deprecation: + fine_tune: 1677662127 + inference: 1709284527 + id: curie + created_at: 1646126127 + object: model + - status: succeeded + model: curie + fine_tune: ft-72a2792ef7d24ba7b82c7fe4a37e379f + capabilities: + fine_tune: false + inference: true + completion: true + chat_completion: false + embeddings: false + lifecycle_status: generally-available + deprecation: + inference: 1709284527 + id: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f + created_at: 1646126127 + object: model + object: list diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/import_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/import_file.json new file mode 100644 index 000000000000..1a7f4477a5ee --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/import_file.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "fileImport": { + "purpose": "fine-tune", + "filename": "puppy.jsonl", + "content_url": "https://www.contoso.com/trainingdata/puppy.jsonl" + }, + "content-Type": "application/json" + }, + "responses": { + "201": { + "headers": { + "location": "https://aoairesource.openai.azure.com/openai/files/file-181a1cbdcdcf4677ada87f63a0928099" + }, + "body": { + "purpose": "fine-tune", + "filename": "puppy.jsonl", + "id": "file-181a1cbdcdcf4677ada87f63a0928099", + "status": "notRunning", + "created_at": 1646126127, + "object": "file" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/import_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/import_file.yaml new file mode 100644 index 000000000000..4af1881948b2 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/import_file.yaml @@ -0,0 +1,48 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2023-10-01-preview + fileImport: + purpose: fine-tune + filename: puppy.jsonl + content_url: &o0 + absolutePath: /trainingdata/puppy.jsonl + absoluteUri: *o0 + localPath: /trainingdata/puppy.jsonl + authority: www.contoso.com + hostNameType: Dns + isDefaultPort: true + isFile: false + isLoopback: false + pathAndQuery: /trainingdata/puppy.jsonl + segments: + - / + - trainingdata/ + - puppy.jsonl + isUnc: false + host: www.contoso.com + port: 443 + query: '' + fragment: '' + scheme: https + originalString: *o0 + dnsSafeHost: www.contoso.com + idnHost: www.contoso.com + isAbsoluteUri: true + userEscaped: false + userInfo: '' + Content-Type: application/json +responses: + 201: + headers: + Location: https://aoairesource.openai.azure.com/openai/files/file-181a1cbdcdcf4677ada87f63a0928099 + body: + statistics: + status_details: + status: pending + bytes: + purpose: fine-tune + filename: puppy.jsonl + id: file-181a1cbdcdcf4677ada87f63a0928099 + created_at: 1646126127 + object: file diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/post_finetuning_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/post_finetuning_job.json new file mode 100644 index 000000000000..1bcdbb6ef462 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/post_finetuning_job.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "fineTuningJob": { + "model": "curie", + "training_file": "file-181a1cbdcdcf4677ada87f63a0928099" + }, + "content-Type": "application/json" + }, + "responses": { + "201": { + "headers": { + "location": "https://aoairesource.openai.azure.com/openai/fine_tuning/jobs/ft-72a2792ef7d24ba7b82c7fe4a37e379f" + }, + "body": { + "hyperparameters": { + "n_epochs": 2 + }, + "model": "curie", + "training_file": "file-181a1cbdcdcf4677ada87f63a0928099", + "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f", + "status": "notRunning", + "created_at": 1646126127, + "object": "fine_tuning.job" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/post_finetuning_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/post_finetuning_job.yaml new file mode 100644 index 000000000000..3c8f95d31d7f --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/post_finetuning_job.yaml @@ -0,0 +1,30 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2023-10-01-preview + fineTuningJob: + hyperparameters: + suffix: + model: curie + trainingFile: file-181a1cbdcdcf4677ada87f63a0928099 + validationFile: + Content-Type: application/json +responses: + 201: + headers: + Location: https://aoairesource.openai.azure.com/openai/fine_tuning/jobs/ft-72a2792ef7d24ba7b82c7fe4a37e379f + body: + hyperparameters: + n_epochs: 2 + suffix: + status: pending + model: curie + fine_tuned_model: + training_file: file-181a1cbdcdcf4677ada87f63a0928099 + validation_file: + result_files: + finished_at: + organisation_id: + id: ft-72a2792ef7d24ba7b82c7fe4a37e379f + created_at: 1646126127 + object: fine_tuning.job diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/upload_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/upload_file.json new file mode 100644 index 000000000000..b41b53c9af09 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/upload_file.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "https://aoairesource.openai.azure.com", + "api-key": "{api key}", + "api-version": "2024-06-01", + "purpose": "fine-tune", + "content-Type": "multipart/form-data", + "file": "raw file content" + }, + "responses": { + "201": { + "headers": { + "location": "https://aoairesource.openai.azure.com/openai/files/file-181a1cbdcdcf4677ada87f63a0928099" + }, + "body": { + "purpose": "fine-tune", + "filename": "puppy.jsonl", + "id": "file-181a1cbdcdcf4677ada87f63a0928099", + "status": "notRunning", + "created_at": 1646126127, + "object": "file" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/upload_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/upload_file.yaml new file mode 100644 index 000000000000..67ecbb879ba8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/stable/2024-06-01/examples/upload_file.yaml @@ -0,0 +1,21 @@ +parameters: + endpoint: https://aoairesource.openai.azure.com + api-key: '{api key}' + api-version: 2023-10-01-preview + purpose: fine-tune + Content-Type: multipart/form-data + file: raw file content +responses: + 201: + headers: + Location: https://aoairesource.openai.azure.com/openai/files/file-181a1cbdcdcf4677ada87f63a0928099 + body: + statistics: + status_details: + status: pending + bytes: + purpose: fine-tune + filename: puppy.jsonl + id: file-181a1cbdcdcf4677ada87f63a0928099 + created_at: 1646126127 + object: file diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md index c627e1fb7cfd..ef5984cec041 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md @@ -210,3 +210,10 @@ These settings apply only when `--tag=release_2024_05_01_preview_autogen` is spe ``` yaml $(tag) == 'release_2024_05_01_preview_autogen' input-file: preview/2024-05-01-preview/generated.json ``` + +## AzureOpenAI 2024-06-01 +These settings apply only when `--tag=release_2024_06_01` is specified on the command line. + +``` yaml $(tag) == 'release_2024_06_01' +input-file: stable/2024-06-01/inference.json +``` diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_object.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_object.json new file mode 100644 index 000000000000..d3f4ed8145df --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_object.json @@ -0,0 +1,15 @@ +{ + "title": "Gets transcribed text and associated metadata from provided spoken audio data.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "" + }, + "responses": { + "200": { + "body": { + "text": "A structured object when requesting json or verbose_json" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_object.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_object.yaml new file mode 100644 index 000000000000..14cd58252cf2 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_object.yaml @@ -0,0 +1,9 @@ +parameters: + api-version: 2024-06-01 + deployment-id: + endpoint: '{endpoint}' +responses: + '200': + body: + text: A structured object when requesting json or verbose_json +title: Gets transcribed text and associated metadata from provided spoken audio data. diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_text.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_text.json new file mode 100644 index 000000000000..759d0c38eaeb --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_text.json @@ -0,0 +1,15 @@ +{ + "title": "Gets transcribed text and associated metadata from provided spoken audio data.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "", + "body": "---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--" + }, + "responses": { + "200": { + "type": "string", + "example": "plain text when requesting text, srt, or vtt" + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_text.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_text.yaml new file mode 100644 index 000000000000..fc908e1099df --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_transcription_text.yaml @@ -0,0 +1,19 @@ +parameters: + api-version: 2024-06-01 + body: '---multipart-boundary + + Content-Disposition: form-data; name="file"; filename="file.wav" + + Content-Type: application/octet-stream + + + RIFF..audio.data.omitted + + ---multipart-boundary--' + deployment-id: + endpoint: '{endpoint}' +responses: + '200': + example: plain text when requesting text, srt, or vtt + type: string +title: Gets transcribed text and associated metadata from provided spoken audio data. diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_object.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_object.json new file mode 100644 index 000000000000..fa3bb9c8b891 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_object.json @@ -0,0 +1,16 @@ +{ + "title": "Gets English language transcribed text and associated metadata from provided spoken audio data.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "", + "body": "---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--" + }, + "responses": { + "200": { + "body": { + "text": "A structured object when requesting json or verbose_json" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_object.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_object.yaml new file mode 100644 index 000000000000..2d9c1f166194 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_object.yaml @@ -0,0 +1,20 @@ +parameters: + api-version: 2024-06-01 + body: '---multipart-boundary + + Content-Disposition: form-data; name="file"; filename="file.wav" + + Content-Type: application/octet-stream + + + RIFF..audio.data.omitted + + ---multipart-boundary--' + deployment-id: + endpoint: '{endpoint}' +responses: + '200': + body: + text: A structured object when requesting json or verbose_json +title: Gets English language transcribed text and associated metadata from provided + spoken audio data. diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_text.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_text.json new file mode 100644 index 000000000000..6673d653f034 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_text.json @@ -0,0 +1,15 @@ +{ + "title": "Gets English language transcribed text and associated metadata from provided spoken audio data.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "", + "body": "---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--" + }, + "responses": { + "200": { + "type": "string", + "example": "plain text when requesting text, srt, or vtt" + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_text.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_text.yaml new file mode 100644 index 000000000000..4244f0420ad1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/audio_translation_text.yaml @@ -0,0 +1,20 @@ +parameters: + api-version: 2024-06-01 + body: '---multipart-boundary + + Content-Disposition: form-data; name="file"; filename="file.wav" + + Content-Type: application/octet-stream + + + RIFF..audio.data.omitted + + ---multipart-boundary--' + deployment-id: + endpoint: '{endpoint}' +responses: + '200': + example: plain text when requesting text, srt, or vtt + type: string +title: Gets English language transcribed text and associated metadata from provided + spoken audio data. diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions.json new file mode 100644 index 000000000000..cc74fde4ef44 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions.json @@ -0,0 +1,43 @@ +{ + "title": "Creates a completion for the provided prompt, parameters and chosen model.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "", + "body": { + "messages": [ + { + "role": "system", + "content": "you are a helpful assistant that talks like a pirate" + }, + { + "role": "user", + "content": "can you tell me how to care for a parrot?" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn", + "created": 1686676106, + "choices": [ + { + "index": 0, + "finish_reason": "stop", + "message": { + "role": "assistant", + "content": "Ahoy matey! So ye be wantin' to care for a fine squawkin' parrot, eh? Well, shiver me timbers, let ol' Cap'n Assistant share some wisdom with ye! Here be the steps to keepin' yer parrot happy 'n healthy:\n\n1. Secure a sturdy cage: Yer parrot be needin' a comfortable place to lay anchor! Be sure ye get a sturdy cage, at least double the size of the bird's wingspan, with enough space to spread their wings, yarrrr!\n\n2. Perches 'n toys: Aye, parrots need perches of different sizes, shapes, 'n textures to keep their feet healthy. Also, a few toys be helpin' to keep them entertained 'n their minds stimulated, arrrh!\n\n3. Proper grub: Feed yer feathered friend a balanced diet of high-quality pellets, fruits, 'n veggies to keep 'em strong 'n healthy. Give 'em fresh water every day, or ye’ll have a scurvy bird on yer hands!\n\n4. Cleanliness: Swab their cage deck! Clean their cage on a regular basis: fresh water 'n food daily, the floor every couple of days, 'n a thorough scrubbing ev'ry few weeks, so the bird be livin' in a tidy haven, arrhh!\n\n5. Socialize 'n train: Parrots be a sociable lot, arrr! Exercise 'n interact with 'em daily to create a bond 'n maintain their mental 'n physical health. Train 'em with positive reinforcement, treat 'em kindly, yarrr!\n\n6. Proper rest: Yer parrot be needin' ’bout 10-12 hours o' sleep each night. Cover their cage 'n let them slumber in a dim, quiet quarter for a proper night's rest, ye scallywag!\n\n7. Keep a weather eye open for illness: Birds be hidin' their ailments, arrr! Be watchful for signs of sickness, such as lethargy, loss of appetite, puffin' up, or change in droppings, and make haste to a vet if need be.\n\n8. Provide fresh air 'n avoid toxins: Parrots be sensitive to draft and pollutants. Keep yer quarters well ventilated, but no drafts, arrr! Be mindful of toxins like Teflon fumes, candles, or air fresheners.\n\nSo there ye have it, me hearty! With proper care 'n commitment, yer parrot will be squawkin' \"Yo-ho-ho\" for many years to come! Good luck, sailor, and may the wind be at yer back!" + } + } + ], + "usage": { + "completion_tokens": 557, + "prompt_tokens": 33, + "total_tokens": 590 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions.yaml new file mode 100644 index 000000000000..d6d7fc36e1ce --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions.yaml @@ -0,0 +1,45 @@ +title: Creates a completion for the provided prompt, parameters and chosen model. +parameters: + endpoint: '{endpoint}' + api-version: 2024-06-01 + deployment-id: + body: + messages: + - role: system + content: you are a helpful assistant that talks like a pirate + - role: user + content: can you tell me how to care for a parrot? +responses: + '200': + body: + id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn + created: 1686676106 + choices: + - index: 0 + finish_reason: stop + message: + role: assistant + content: |- + Ahoy matey! So ye be wantin' to care for a fine squawkin' parrot, eh? Well, shiver me timbers, let ol' Cap'n Assistant share some wisdom with ye! Here be the steps to keepin' yer parrot happy 'n healthy: + + 1. Secure a sturdy cage: Yer parrot be needin' a comfortable place to lay anchor! Be sure ye get a sturdy cage, at least double the size of the bird's wingspan, with enough space to spread their wings, yarrrr! + + 2. Perches 'n toys: Aye, parrots need perches of different sizes, shapes, 'n textures to keep their feet healthy. Also, a few toys be helpin' to keep them entertained 'n their minds stimulated, arrrh! + + 3. Proper grub: Feed yer feathered friend a balanced diet of high-quality pellets, fruits, 'n veggies to keep 'em strong 'n healthy. Give 'em fresh water every day, or ye’ll have a scurvy bird on yer hands! + + 4. Cleanliness: Swab their cage deck! Clean their cage on a regular basis: fresh water 'n food daily, the floor every couple of days, 'n a thorough scrubbing ev'ry few weeks, so the bird be livin' in a tidy haven, arrhh! + + 5. Socialize 'n train: Parrots be a sociable lot, arrr! Exercise 'n interact with 'em daily to create a bond 'n maintain their mental 'n physical health. Train 'em with positive reinforcement, treat 'em kindly, yarrr! + + 6. Proper rest: Yer parrot be needin' ’bout 10-12 hours o' sleep each night. Cover their cage 'n let them slumber in a dim, quiet quarter for a proper night's rest, ye scallywag! + + 7. Keep a weather eye open for illness: Birds be hidin' their ailments, arrr! Be watchful for signs of sickness, such as lethargy, loss of appetite, puffin' up, or change in droppings, and make haste to a vet if need be. + + 8. Provide fresh air 'n avoid toxins: Parrots be sensitive to draft and pollutants. Keep yer quarters well ventilated, but no drafts, arrr! Be mindful of toxins like Teflon fumes, candles, or air fresheners. + + So there ye have it, me hearty! With proper care 'n commitment, yer parrot will be squawkin' "Yo-ho-ho" for many years to come! Good luck, sailor, and may the wind be at yer back! + usage: + completion_tokens: 557 + prompt_tokens: 33 + total_tokens: 590 diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_advanced.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_advanced.json new file mode 100644 index 000000000000..ce73db81c2cc --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_advanced.json @@ -0,0 +1,96 @@ +{ + "title": "Creates a completion based on Azure Search vector data, previous assistant message and user-assigned managed identity.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "", + "body": { + "messages": [ + { + "role": "user", + "content": "can you tell me how to care for a cat?" + }, + { + "role": "assistant", + "content": "Content of the completion [doc1].", + "context": { + "intent": "cat care" + } + }, + { + "role": "user", + "content": "how about dog?" + } + ], + "data_sources": [ + { + "type": "azure_search", + "parameters": { + "endpoint": "https://your-search-endpoint.search.windows.net/", + "authentication": { + "type": "user_assigned_managed_identity", + "managed_identity_resource_id": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{resource-name}" + }, + "index_name": "{index name}", + "query_type": "vector", + "embedding_dependency": { + "type": "deployment_name", + "deployment_name": "{embedding deployment name}" + }, + "in_scope": true, + "top_n_documents": 5, + "strictness": 3, + "role_information": "You are an AI assistant that helps people find information.", + "fields_mapping": { + "content_fields_separator": "\\n", + "content_fields": [ + "content" + ], + "filepath_field": "filepath", + "title_field": "title", + "url_field": "url", + "vector_fields": [ + "contentvector" + ] + } + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn", + "created": 1686676106, + "choices": [ + { + "index": 0, + "finish_reason": "stop", + "message": { + "role": "assistant", + "content": "Content of the completion [doc1].", + "context": { + "citations": [ + { + "content": "Citation content 2.", + "title": "Citation Title 2", + "filepath": "contoso2.txt", + "url": "https://contoso.blob.windows.net/container/contoso2.txt", + "chunk_id": "0" + } + ], + "intent": "dog care" + } + } + } + ], + "usage": { + "completion_tokens": 557, + "prompt_tokens": 33, + "total_tokens": 590 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_advanced.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_advanced.yaml new file mode 100644 index 000000000000..b532160e09bd --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_advanced.yaml @@ -0,0 +1,63 @@ +title: Creates a completion based on Azure Search vector data, previous assistant message and user-assigned managed identity. +parameters: + endpoint: '{endpoint}' + api-version: 2024-06-01 + deployment-id: + body: + messages: + - role: user + content: can you tell me how to care for a cat? + - role: assistant + content: Content of the completion [doc1]. + context: + intent: cat care + - role: user + content: how about dog? + data_sources: + - type: azure_search + parameters: + endpoint: https://your-search-endpoint.search.windows.net/ + authentication: + type: user_assigned_managed_identity + managed_identity_resource_id: /subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{resource-name} + index_name: '{index name}' + query_type: vector + embedding_dependency: + type: deployment_name + deployment_name: '{embedding deployment name}' + in_scope: true + top_n_documents: 5 + strictness: 3 + role_information: You are an AI assistant that helps people find information. + fields_mapping: + content_fields_separator: \n + content_fields: + - content + filepath_field: filepath + title_field: title + url_field: url + vector_fields: + - contentvector +responses: + '200': + body: + id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn + created: 1686676106 + choices: + - index: 0 + finish_reason: stop + message: + role: assistant + content: Content of the completion [doc1]. + context: + citations: + - content: Citation content 2. + title: Citation Title 2 + filepath: contoso2.txt + url: https://contoso.blob.windows.net/container/contoso2.txt + chunk_id: '0' + intent: dog care + usage: + completion_tokens: 557 + prompt_tokens: 33 + total_tokens: 590 diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_minimum.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_minimum.json new file mode 100644 index 000000000000..e7a996eadc57 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_minimum.json @@ -0,0 +1,63 @@ +{ + "title": "Creates a completion based on Azure Search data and system-assigned managed identity.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "", + "body": { + "messages": [ + { + "role": "user", + "content": "can you tell me how to care for a dog?" + } + ], + "data_sources": [ + { + "type": "azure_search", + "parameters": { + "endpoint": "https://your-search-endpoint.search.windows.net/", + "index_name": "{index name}", + "authentication": { + "type": "system_assigned_managed_identity" + } + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn", + "created": 1686676106, + "choices": [ + { + "index": 0, + "finish_reason": "stop", + "message": { + "role": "assistant", + "content": "Content of the completion [doc1].", + "context": { + "citations": [ + { + "content": "Citation content.", + "title": "Citation Title", + "filepath": "contoso.txt", + "url": "https://contoso.blob.windows.net/container/contoso.txt", + "chunk_id": "0" + } + ], + "intent": "dog care" + } + } + } + ], + "usage": { + "completion_tokens": 557, + "prompt_tokens": 33, + "total_tokens": 590 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_minimum.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_minimum.yaml new file mode 100644 index 000000000000..13e8656d7328 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_azure_search_minimum.yaml @@ -0,0 +1,39 @@ +title: Creates a completion based on Azure Search data and system-assigned managed identity. +parameters: + endpoint: '{endpoint}' + api-version: 2024-06-01 + deployment-id: + body: + messages: + - role: user + content: can you tell me how to care for a dog? + data_sources: + - type: azure_search + parameters: + endpoint: https://your-search-endpoint.search.windows.net/ + index_name: '{index name}' + authentication: + type: system_assigned_managed_identity +responses: + '200': + body: + id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn + created: 1686676106 + choices: + - index: 0 + finish_reason: stop + message: + role: assistant + content: Content of the completion [doc1]. + context: + citations: + - content: Citation content. + title: Citation Title + filepath: contoso.txt + url: https://contoso.blob.windows.net/container/contoso.txt + chunk_id: '0' + intent: dog care + usage: + completion_tokens: 557 + prompt_tokens: 33 + total_tokens: 590 diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_cosmos_db.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_cosmos_db.json new file mode 100644 index 000000000000..d0045e539e24 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_cosmos_db.json @@ -0,0 +1,77 @@ +{ + "title": "Creates a completion for the provided Azure Cosmos DB.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "", + "body": { + "messages": [ + { + "role": "user", + "content": "can you tell me how to care for a dog?" + } + ], + "data_sources": [ + { + "type": "azure_cosmos_db", + "parameters": { + "authentication": { + "type": "connection_string", + "connection_string": "mongodb+srv://rawantest:{password}$@{cluster-name}.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000" + }, + "database_name": "vectordb", + "container_name": "azuredocs", + "index_name": "azuredocindex", + "embedding_dependency": { + "type": "deployment_name", + "deployment_name": "{embedding deployment name}" + }, + "fields_mapping": { + "content_fields": [ + "content" + ], + "vector_fields": [ + "contentvector" + ] + } + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn", + "created": 1686676106, + "choices": [ + { + "index": 0, + "finish_reason": "stop", + "message": { + "role": "assistant", + "content": "Content of the completion [doc1].", + "context": { + "citations": [ + { + "content": "Citation content.", + "title": "Citation Title", + "filepath": "contoso.txt", + "url": "https://contoso.blob.windows.net/container/contoso.txt", + "chunk_id": "0" + } + ], + "intent": "dog care" + } + } + } + ], + "usage": { + "completion_tokens": 557, + "prompt_tokens": 33, + "total_tokens": 590 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_cosmos_db.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_cosmos_db.yaml new file mode 100644 index 000000000000..24c6b99fdc94 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/chat_completions_cosmos_db.yaml @@ -0,0 +1,49 @@ +title: Creates a completion for the provided Azure Cosmos DB. +parameters: + endpoint: '{endpoint}' + api-version: 2024-06-01 + deployment-id: + body: + messages: + - role: user + content: can you tell me how to care for a dog? + data_sources: + - type: azure_cosmos_db + parameters: + authentication: + type: connection_string + connection_string: mongodb+srv://rawantest:{password}$@{cluster-name}.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000 + database_name: vectordb + container_name: azuredocs + index_name: azuredocindex + embedding_dependency: + type: deployment_name + deployment_name: '{embedding deployment name}' + fields_mapping: + content_fields: + - content + vector_fields: + - contentvector +responses: + '200': + body: + id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn + created: 1686676106 + choices: + - index: 0 + finish_reason: stop + message: + role: assistant + content: Content of the completion [doc1]. + context: + citations: + - content: Citation content. + title: Citation Title + filepath: contoso.txt + url: https://contoso.blob.windows.net/container/contoso.txt + chunk_id: '0' + intent: dog care + usage: + completion_tokens: 557 + prompt_tokens: 33 + total_tokens: 590 diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/completions.json new file mode 100644 index 000000000000..d0d5be75a90e --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/completions.json @@ -0,0 +1,38 @@ +{ + "operationId": "GetCompletions", + "title": "Creates a completion for the provided prompt, parameters and chosen model.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deploymentId": "", + "body": { + "prompt": [ + "tell me a joke about mango" + ], + "max_tokens": 32, + "temperature": 1.0, + "n": 1 + } + }, + "responses": { + "200": { + "body": { + "id": "cmpl-7QmVI15qgYVllxK0FtxVGG6ywfzaq", + "created": 1686617332, + "choices": [ + { + "text": "es\n\nWhat do you call a mango who's in charge?\n\nThe head mango.", + "index": 0, + "finish_reason": "stop", + "logprobs": null + } + ], + "usage": { + "completion_tokens": 20, + "prompt_tokens": 6, + "total_tokens": 26 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/embeddings.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/embeddings.json new file mode 100644 index 000000000000..c344b1f46ac8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/embeddings.json @@ -0,0 +1,1566 @@ +{ + "title": "Return the embeddings for a given prompt.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "deployment-afa0669ca01e4693ae3a93baf40f26d6", + "body": { + "input": [ + "this is a test" + ] + } + }, + "responses": { + "200": { + "body": { + "data": [ + { + "index": 0, + "embedding": [ + -0.012838088, + -0.007421397, + -0.017617522, + -0.028278312, + -0.018666342, + 0.01737855, + -0.01821495, + -0.006950092, + -0.009937238, + -0.038580645, + 0.010674067, + 0.02412286, + -0.013647936, + 0.013189907, + 0.0021125758, + 0.012406612, + 0.020790534, + 0.00074595667, + 0.008397198, + -0.00535031, + 0.008968075, + 0.014351576, + -0.014086051, + 0.015055214, + -0.022211088, + -0.025198232, + 0.0065186154, + -0.036350243, + 0.009180495, + -0.009698266, + 0.009446018, + -0.008463579, + -0.0040426035, + -0.03443847, + -0.00091273896, + -0.0019217303, + 0.002349888, + -0.021560553, + 0.016515596, + -0.015572986, + 0.0038666942, + -0.00008432463, + 0.0032178196, + -0.020365695, + -0.009631885, + -0.007647093, + 0.0033837722, + -0.026764825, + -0.010501476, + 0.020219658, + 0.024640633, + -0.0066912062, + -0.036456455, + -0.0040923897, + -0.013966565, + 0.017816665, + 0.005366905, + 0.022835068, + 0.0103488, + -0.0010811808, + -0.028942121, + 0.0074280356, + -0.017033368, + 0.0074877786, + 0.021640211, + 0.002499245, + 0.013316032, + 0.0021524043, + 0.010129742, + 0.0054731146, + 0.03143805, + 0.014856071, + 0.0023366117, + -0.0008243692, + 0.022781964, + 0.003038591, + -0.017617522, + 0.0013309394, + 0.0022154662, + 0.00097414135, + 0.012041516, + -0.027906578, + -0.023817508, + 0.013302756, + -0.003003741, + -0.006890349, + 0.0016744611, + 0.023658194, + -0.015851786, + -0.0045305043, + -0.003038591, + 0.017710455, + 0.019237218, + 0.016037652, + -0.022503164, + 0.025795663, + -0.001129307, + 0.032500144, + -0.008178141, + -0.019940857, + -0.009877495, + 0.00018918588, + 0.023060765, + -0.005692172, + -0.018347712, + -0.011039163, + -0.0062066247, + -0.0000524047, + 0.020126723, + -0.0011691356, + -0.015811957, + 0.020086896, + -0.009114114, + -0.03056182, + 0.0029025099, + -0.006591635, + -0.014046223, + -0.01590489, + -0.02307404, + -0.008861865, + -0.004832538, + 0.010030171, + 0.02311387, + -0.012652221, + 0.024906157, + 0.003860056, + -0.01936998, + -0.02957938, + -0.008357369, + -0.0016371218, + 0.027800368, + 0.0077333883, + 0.021626934, + 0.02140124, + -0.030482162, + 0.026406368, + -0.008277712, + 0.012884554, + -0.043784916, + -0.0145639945, + -0.0070297495, + 0.034889862, + -0.00041508878, + -0.010528029, + -0.009572142, + 0.015692472, + 0.037810627, + -0.0022021902, + 0.008662722, + -0.016794397, + 0.0003090866, + -0.0060506295, + 0.015227805, + 0.0006650548, + 0.01842737, + 0.036801632, + -0.002461076, + -0.0029390194, + -0.0057120863, + -0.012486269, + -0.0046831807, + -0.0017474802, + -0.0036210844, + -0.01178263, + 0.017869769, + 0.039111692, + 0.010946229, + 0.018467197, + 0.0027780454, + -0.005851486, + -0.016489044, + 0.03186289, + -0.040333103, + 0.016648358, + -0.006870435, + 0.0072687212, + 0.000002370982, + 0.006465511, + -0.018201673, + -0.00020526254, + -0.025410652, + 0.02010017, + 0.017537864, + 0.022821793, + 0.0064555537, + -0.0012969191, + 0.02157383, + -0.0053536287, + -0.0087622935, + -0.010952868, + 0.017564416, + 0.02185263, + 0.0004733796, + 0.0018337755, + -0.6954606, + -0.011231667, + 0.02748174, + 0.003929756, + 0.0144843375, + 0.045192193, + 0.01898497, + -0.0070363875, + -0.007813046, + 0.017604245, + -0.017790113, + 0.011165286, + -0.0036376796, + -0.014736585, + 0.0016421003, + -0.019144284, + -0.0072222543, + -0.023127146, + 0.006936816, + 0.025198232, + 0.0030219958, + 0.011722887, + -0.004271618, + -0.0011127117, + -0.0051047, + 0.00077333883, + 0.018599961, + 0.0074877786, + 0.010820106, + 0.0033406245, + -0.015055214, + 0.02384406, + 0.006090458, + 0.00891497, + 0.023366116, + -0.011078991, + -0.019582398, + 0.0011566891, + 0.015413672, + 0.01793615, + -0.014736585, + 0.002492607, + 0.027800368, + 0.023923717, + -0.007421397, + 0.0016105693, + 0.011337877, + -0.015041938, + -0.008768932, + -0.003982861, + 0.002884255, + -0.007832959, + 0.0025457118, + -0.0023548664, + -0.0061767534, + -0.016754568, + 0.0006036523, + 0.0105346665, + 0.0055361767, + 0.01478969, + -0.0011251582, + 0.009605332, + -0.0037140178, + -0.017537864, + -0.021733144, + 0.012897831, + -0.024481317, + 0.022290744, + 0.0056523434, + -0.005366905, + 0.0020412162, + 0.013435517, + -0.003408665, + -0.01705992, + 0.029446619, + 0.022011945, + 0.009226961, + -0.003310753, + -0.007939169, + 0.021308305, + 0.0026718357, + 0.002129171, + -0.020047067, + -0.007474502, + 0.021534001, + -0.0110590765, + -0.018374264, + -0.001664504, + -0.003923118, + 0.015387119, + 0.025516862, + 0.0016421003, + -0.017498035, + -0.01825478, + 0.01451089, + -0.008198055, + -0.011656506, + 0.0044242945, + 0.031491153, + 0.01017621, + -0.010408543, + -0.009034456, + -0.0023283141, + 0.012021601, + 0.015639367, + 0.011736163, + 0.007912617, + 0.02031259, + 0.022104878, + -0.02241023, + 0.00041156227, + -0.009817752, + -0.030880447, + -0.0017823302, + 0.0030933553, + -0.04128899, + -0.0007783174, + 0.012393335, + 0.0122273825, + -0.009087561, + 0.022728859, + -0.002884255, + 0.028065892, + 0.0047396044, + 0.008065294, + 0.015519881, + 0.0133956885, + -0.02279524, + -0.011729525, + 0.0037206558, + -0.0046732235, + 0.003587894, + 0.024401661, + -0.013574918, + 0.012685412, + -0.0041620894, + 0.020578114, + 0.007394845, + 0.014139156, + -0.012512821, + -0.021042781, + 0.022423506, + -0.015360567, + 0.004009413, + 0.0104550095, + -0.024799947, + -0.0081449505, + -0.00063850236, + 0.0070231115, + -0.0009633545, + -0.015705748, + -0.0028942123, + -0.008815398, + 0.007461226, + -0.014417957, + -0.012931022, + 0.0015674217, + -0.02506547, + -0.0063128346, + -0.013422241, + -0.0058614435, + -0.0006007482, + -0.015002109, + 0.0037040606, + -0.008410474, + -0.0016089098, + -0.018653065, + 0.020538285, + -0.016980262, + -0.042244878, + -0.017498035, + 0.006727716, + -0.01877255, + 0.008987989, + 0.00077665783, + -0.0007119364, + -0.0067243967, + 0.0038467797, + -0.018055636, + -0.01440468, + 0.007534245, + 0.0051212953, + 0.002741536, + 0.011523744, + -0.0018603279, + 0.023684746, + 0.016196968, + 0.01731217, + -0.01992758, + 0.009372999, + -0.01982137, + 0.001150051, + -0.014417957, + 0.005672258, + -0.015785405, + 0.0049387473, + -0.0051445286, + 0.012632307, + 0.0011666464, + 0.024587527, + 0.04259006, + -0.0025672857, + 0.02311387, + -0.014524166, + 0.0013848739, + -0.04105002, + -0.010089914, + -0.009087561, + 0.015440224, + 0.009207047, + 0.0128048975, + -0.030216638, + -0.02549031, + 0.00499849, + 0.02737553, + 0.024985814, + -0.015055214, + 0.007580712, + -0.003979542, + 0.0016304837, + 0.0010446712, + 0.0033373055, + 0.0066314633, + -0.011948583, + -0.021281753, + 0.012161002, + 0.030747686, + 0.03555367, + 0.023751127, + -0.03159736, + -0.0110590765, + 0.015758853, + -0.0012197511, + -0.0023249951, + -0.0007488608, + 0.0074877786, + 0.01643594, + -0.008098484, + 0.03730613, + -0.0010056724, + -0.000034798173, + 0.011702972, + 0.039563086, + -0.012280487, + 0.027747264, + 0.018387541, + 0.033057746, + -0.004835857, + -0.00471969, + 0.025450481, + -0.0051146573, + 0.014603823, + 0.00022258384, + 0.00060863094, + 0.015665919, + -0.021626934, + -0.013674489, + 0.0062066247, + 0.018560132, + 0.031942543, + 0.012054792, + 0.004902238, + 0.0028510645, + -0.027667606, + 0.009817752, + -0.002580562, + 0.0069036256, + 0.020047067, + -0.009704905, + -0.012619031, + -0.0056755766, + -0.0036443176, + 0.019383255, + 0.0030701219, + 0.024972538, + 0.009100837, + 0.026353262, + 0.012758431, + 0.029074885, + 0.021202097, + -0.0038102702, + -0.032048754, + 0.003996137, + 0.0029738694, + 0.0032277768, + -0.026127568, + -0.02213143, + 0.0028742978, + 0.0010637557, + 0.000580419, + 0.0021789568, + 0.00083764544, + 0.026924139, + -0.03265946, + 0.0059211864, + 0.021892458, + 0.01178263, + 0.0018188398, + 0.009718181, + -0.020047067, + 0.017989255, + 0.0046035233, + -0.010561219, + -0.010342162, + 0.009505761, + -0.018334435, + -0.00667793, + -0.024534423, + 0.00035347888, + 0.00082561385, + -0.006143563, + 0.016820949, + -0.0013500239, + -0.0069832825, + 0.015347291, + -0.005094743, + 0.001838754, + 0.017073197, + 0.02521151, + 0.006209944, + -0.015612815, + -0.009744733, + -0.019794818, + 0.007786493, + 0.037624758, + 0.017564416, + 0.0076802834, + 0.0026203906, + 0.0022403593, + -0.024560975, + -0.04062518, + -0.016581977, + 0.00789934, + 0.0099305995, + 0.006996559, + 0.011078991, + 0.016236795, + -0.0068969876, + 0.01374087, + 0.014922452, + -0.0042882133, + 0.00022901449, + -0.0006692036, + 0.001359981, + -0.00007581957, + 0.0042616613, + 0.0066381013, + 0.012512821, + 0.021534001, + 0.0032775626, + 0.016913882, + -0.00789934, + -0.009200408, + -0.020286039, + -0.017033368, + 0.014378128, + 0.009233599, + 0.0070828544, + -0.013229736, + 0.025928425, + -0.011862287, + 0.008383922, + 0.012632307, + -0.0003097089, + 0.007593988, + 0.0059079104, + -0.0026369859, + -0.0262205, + 0.003335646, + -0.0067609064, + -0.0042882133, + 0.008549875, + -0.007600626, + -0.012592479, + 0.028623493, + -0.0030502076, + -0.006989921, + -0.015785405, + 0.010050085, + 0.016714739, + -0.023724575, + -0.006346025, + -0.014245366, + -0.032154962, + -0.03388087, + -0.024308728, + -0.002461076, + -0.003733932, + -0.02195884, + -0.021069333, + -0.022144707, + -0.007872788, + -0.017179407, + -0.009034456, + -0.010893124, + -0.02478667, + -0.020153277, + -0.023976821, + 0.014656927, + 0.0005368565, + -0.015878338, + 0.010123105, + -0.0030717815, + 0.01555971, + 0.0018321159, + -0.036244035, + 0.00017176087, + -0.013375774, + -0.010375353, + 0.026512576, + 0.016581977, + 0.013847079, + 0.015719024, + 0.013223098, + 0.004975257, + -0.0010579474, + -0.0034385365, + -0.029048331, + 0.017298892, + -0.022529716, + 0.008463579, + -0.014723309, + -0.005814977, + -0.009027818, + -0.009738095, + -0.0104682855, + -0.005044957, + 0.007905979, + 0.011656506, + 0.003153098, + -0.0005231654, + 0.019954132, + -0.021985391, + -0.005307162, + 0.0021839354, + -0.025184957, + 0.013926737, + -0.0059908866, + 0.0065717204, + 0.009884133, + -0.0062298584, + 0.03388087, + 0.0028577026, + -0.015931444, + 0.0010986058, + -0.025808938, + 0.0022835068, + 0.014152432, + 0.015227805, + 0.013701041, + -0.007872788, + -0.030614924, + -0.026393091, + 0.0010753724, + -0.016940435, + 0.013647936, + -0.007408121, + -0.024308728, + -0.031915992, + -0.018161846, + 0.00072521257, + 0.028862465, + 0.012234021, + -0.019555846, + -0.027641054, + -0.00082810316, + -0.0019150922, + -0.016276624, + -0.01125822, + -0.034146395, + -0.015294186, + 0.006671292, + -0.015533158, + 0.013674489, + -0.0011766035, + -0.017325444, + -0.023233354, + -0.013189907, + 0.0005580154, + -0.03188944, + -0.007056302, + -0.0059942054, + 0.03411984, + 0.04317421, + 0.029420065, + 0.006488744, + -0.0022436783, + 0.013063784, + 0.00012207884, + 0.008118398, + -0.023246631, + 0.0051909955, + -0.00894816, + 0.0081316745, + 0.0023200165, + 0.011510468, + -0.0005770999, + 0.00016979019, + 0.010129742, + 0.015506605, + -0.0073815687, + 0.0031995648, + -0.026578957, + -0.016674912, + 0.0049652997, + 0.0072687212, + -0.016568702, + -0.001964878, + -0.015692472, + -0.0048955996, + 0.027773816, + 0.012864641, + 0.01594472, + 0.008244522, + 0.017139578, + -0.01772373, + -0.0012521119, + 0.011689696, + 0.0111121815, + -0.0036476366, + 0.0012570905, + -0.007826322, + -0.016754568, + 0.011948583, + -0.0045968853, + 0.023963546, + -0.0052739717, + 0.014656927, + 0.009731457, + 0.010727172, + -0.01705992, + -0.0026071144, + 0.010760362, + 0.000919377, + -0.006365939, + -0.03013698, + -0.010554581, + -0.018613236, + 0.013886908, + 0.029420065, + -0.013030593, + 0.016860778, + -0.019237218, + -0.022118153, + 0.007919255, + -0.0004003605, + 0.046546366, + 0.01349526, + 0.006352663, + 0.014258642, + 0.0031813101, + -0.027017072, + 0.0070828544, + -0.020219658, + 0.0037140178, + 0.023366116, + 0.040386207, + -0.016382834, + -0.0023681426, + 0.0064522345, + 0.016528873, + 0.0006804054, + -0.02891557, + -0.0043545947, + 0.01101261, + -0.0014778073, + -0.018055636, + -0.0077001974, + -0.0358723, + 0.003373815, + -0.00071940426, + -0.011822458, + -0.024295451, + -0.009791199, + -0.026565682, + 0.020989677, + -0.035155386, + 0.01832116, + 0.014776413, + -0.028012788, + -0.007262083, + 0.0030402504, + -0.029446619, + 0.00010174965, + 0.009758009, + 0.03767786, + -0.0154535, + 0.009346447, + 0.016077481, + 0.0041189417, + -0.027800368, + 0.01720596, + -0.011158649, + 0.027800368, + -0.03003077, + -0.0072819972, + 0.0014296811, + 0.0145374425, + 0.0043280423, + -0.017086472, + -0.01611731, + -0.01258584, + -0.016927158, + 0.007607264, + 0.018825656, + 0.011331239, + -0.0057784673, + 0.001569911, + -0.013900184, + -0.014776413, + -0.0050814664, + -0.0012454737, + -0.0115967635, + -0.017458206, + -0.013203184, + -0.0063692583, + -0.01244644, + 0.011882202, + 0.0007708495, + -0.02035242, + 0.016250072, + 0.018414093, + -0.029526275, + 0.012751793, + -0.01555971, + 0.0013840442, + -0.019502742, + 0.0063758963, + 0.0037538463, + -0.035686433, + 0.027534844, + -0.016409386, + -0.03247359, + -0.008782208, + -0.0059842486, + 0.014338299, + 0.009233599, + -0.0053171194, + 0.006160158, + 0.0072952732, + 0.01401967, + 0.008815398, + -0.023790956, + 0.013096974, + -0.0031365028, + 0.005044957, + 0.0005356118, + -0.009379637, + 0.0066248253, + -0.00010724682, + 0.010289057, + 0.008815398, + -0.02279524, + -0.019701885, + -0.0027747264, + 0.016183691, + -0.014205537, + -0.003933075, + -0.013375774, + -0.005751915, + -0.010116466, + 0.004988533, + -0.005904591, + -0.008656085, + -0.017431654, + -0.011988411, + -0.01594472, + 0.00660823, + -0.027216217, + 0.0073218257, + -0.029977666, + -0.004593566, + -0.026671892, + -0.028517283, + -0.0050084474, + 0.009844304, + 0.025729282, + -0.013780698, + -0.026751548, + 0.004905557, + -0.035951957, + -0.026738273, + -0.019768266, + 0.0048690476, + 0.005250738, + 0.0014603822, + -0.018892037, + 0.017683903, + 0.0067177587, + 0.027694158, + -0.002618731, + -0.012419888, + 0.01772373, + -0.0032593077, + 0.006611549, + 0.016648358, + -0.03789028, + -0.023100592, + 0.023684746, + 0.0031248862, + 0.016382834, + 0.019967409, + -0.008941523, + -0.02014, + 0.0073882067, + 0.011357792, + -0.0031796505, + -0.0030253148, + -0.0010206081, + -0.017577693, + -0.009598695, + 0.002915786, + 0.001325131, + -0.0029207645, + -0.010780277, + -0.00325101, + -0.00811176, + -0.00073434, + -0.030083876, + -0.012864641, + -0.012745155, + -0.011769353, + 0.018785827, + -0.008264436, + -0.002675155, + 0.024255622, + 0.005483072, + -0.018480474, + -0.005426648, + 0.015095043, + 0.00044392303, + 0.011271496, + -0.0027548121, + 0.0026884312, + -0.00894816, + -0.015161424, + -0.014975557, + -0.024600804, + 0.004457485, + -0.015519881, + -0.012366783, + -0.012579202, + 0.01478969, + 0.0075541595, + -0.017962702, + -0.0017441611, + -0.014059499, + 0.005499667, + -0.0026884312, + 0.0031929268, + 0.0010853296, + -0.008045379, + 0.017471483, + 0.02590187, + -0.018546855, + -0.007826322, + 0.009333171, + 0.0157323, + 0.000086036016, + 0.004776114, + 0.22155327, + 0.006787459, + -0.0017823302, + 0.024919434, + 0.0023449094, + 0.03210186, + 0.0047329664, + -0.010879848, + 0.0044342517, + 0.015334014, + 0.029499723, + 0.019715162, + -0.008569789, + -0.0018901994, + -0.0077400263, + -0.019210665, + -0.005088105, + -0.023153698, + -0.032739118, + -0.029313855, + 0.00082146504, + -0.0212552, + 0.0044309325, + -0.005446562, + 0.018613236, + -0.009751371, + -0.013023955, + -0.001996409, + 0.01915756, + 0.017431654, + -0.031092867, + -0.0070231115, + 0.025330994, + -0.00018099198, + -0.025131851, + -0.011025886, + 0.0116498675, + -0.02506547, + 0.029234199, + -0.012287126, + 0.0069766445, + 0.0018752636, + 0.014271918, + 0.005108019, + -0.0109064, + 0.014391404, + 0.0062597296, + -0.031411495, + 0.00014935728, + 0.013236375, + -0.02891557, + -0.0006671292, + 0.008662722, + 0.012161002, + 0.020963125, + -0.0133691365, + 0.02653913, + -0.017989255, + 0.007978998, + 0.0093398085, + -0.02024621, + 0.03265946, + -0.02846418, + 0.025397375, + -0.024693737, + -0.0027050264, + -0.019330151, + -0.0104417335, + 0.015626092, + -0.006541849, + 0.004653309, + -0.025118576, + 0.0038268655, + 0.004045923, + -0.017564416, + -0.02444149, + 0.030296294, + 0.028756255, + 0.03927101, + 0.010767001, + -0.012034878, + -0.007122683, + -0.022476612, + -0.034942966, + -0.028411074, + -0.03927101, + -0.0037505273, + -0.0038799702, + -0.00037111135, + -0.009718181, + -0.013455432, + -0.015400395, + -0.0066978442, + -0.010760362, + 0.015121595, + 0.03111942, + 0.007992274, + 0.0270569, + -0.003104972, + 0.010056724, + -0.018414093, + 0.006472149, + 0.021281753, + 0.0043579135, + -0.00021490853, + 0.0008546556, + -0.01269205, + -0.003936394, + 0.0008870163, + 0.0009816092, + 0.0054664765, + -0.031278733, + 0.017245788, + 0.00027734818, + 0.005161124, + 0.0048093046, + -0.003923118, + -0.027149836, + 0.006950092, + -0.00615352, + 0.014205537, + 0.0016620146, + 0.0047396044, + 0.0039994563, + -0.015440224, + -0.0055627287, + -0.026273604, + 0.0013276202, + 0.0021009592, + -0.034810204, + 0.0064522345, + 0.00042608313, + 0.02307404, + -0.005957696, + 0.0016869075, + -0.0032775626, + -0.009041094, + -0.01227385, + -0.04349284, + 0.015652644, + 0.013468708, + -0.0023249951, + -0.011171925, + 0.0030352718, + -0.0061203293, + -0.023153698, + 0.046068422, + -0.005582643, + -0.02405648, + 0.005433286, + -0.02814555, + -0.0036874653, + 0.0067841397, + 0.006628144, + 0.029844904, + -0.0044276137, + -0.029127989, + -0.04548427, + 0.022091601, + 0.0038069512, + -0.030269742, + 0.0051578046, + 0.043572497, + -0.0144843375, + -0.02891557, + -0.010461648, + -0.17375894, + 0.029154541, + 0.019648781, + -0.00038335036, + 0.0029572742, + -0.0026469429, + 0.035925403, + -0.012021601, + 0.0015566348, + -0.0033124126, + 0.0010430117, + -0.010620962, + -0.022582822, + 0.00601412, + 0.008364008, + -0.0016586956, + -0.0011102224, + -0.013860356, + 0.022542993, + 0.020564837, + 0.018414093, + -0.008908332, + 0.032951534, + -0.011908754, + 0.010169571, + -0.011198477, + 0.0029108075, + 0.033084296, + 0.0029008503, + -0.0010015236, + -0.019794818, + 0.005844848, + 0.011669782, + 0.0052208668, + 0.010129742, + 0.0037737607, + 0.02880936, + -0.018599961, + -0.015095043, + 0.026578957, + 0.019662056, + 0.006823968, + -0.00045885876, + -0.019396532, + -0.0047993474, + 0.017192682, + 0.039589636, + -0.00874238, + 0.02146762, + -0.007667007, + 0.018785827, + -0.012758431, + -0.010010257, + -0.02052501, + 0.016090758, + 0.0061867107, + -0.0145507185, + 0.008065294, + 0.0104284575, + -0.0022386997, + -0.008324179, + -0.021640211, + 0.01705992, + -0.010541305, + -0.01639611, + -0.0074413116, + -0.034703992, + 0.007016473, + -0.003083398, + 0.0013691084, + -0.005108019, + -0.007886064, + 0.00053270767, + -0.018865485, + 0.025503585, + 0.005101381, + -0.027534844, + 0.015028661, + -0.009286704, + 0.006233177, + 0.00004343289, + 0.036031615, + 0.00957878, + 0.019250493, + 0.0024411618, + 0.0023664832, + -0.0030269742, + -0.007939169, + 0.0058581247, + 0.00587472, + 0.036589216, + -0.035288148, + -0.012997403, + -0.0110989055, + -0.002492607, + 0.008151589, + -0.008085207, + -0.00734174, + -0.0016802694, + 0.008403837, + -0.007793131, + -0.003913161, + -0.025437204, + 0.027123282, + 0.019330151, + -0.008729103, + 0.003943032, + 0.010289057, + 0.029977666, + 0.0014836156, + -0.024282174, + -0.0024361832, + 0.0110325245, + 0.021719867, + 0.012844726, + 0.015002109, + 0.020737428, + -0.013037231, + 0.014802966, + -0.0027332383, + 0.041634172, + -0.00926679, + -0.018759275, + 0.018666342, + 0.005386819, + -0.008822037, + -0.068399, + -0.054804165, + 0.027800368, + 0.04954679, + -0.00437119, + 0.029127989, + 0.03180978, + 0.021321582, + -0.022503164, + 0.010554581, + -0.006823968, + -0.021387963, + -0.021865906, + -0.0074479496, + 0.0037206558, + 0.004132218, + 0.01073381, + -0.0021673401, + -0.0012819833, + 0.041235887, + -0.010202762, + 0.004839176, + 0.0081715025, + -0.030402504, + -0.023764404, + -0.010800191, + -0.018374264, + 0.033641897, + 0.005416691, + -0.0055096243, + -0.0032775626, + -0.018095464, + 0.008563151, + -0.02339267, + -0.013674489, + 0.0023382711, + -0.028411074, + -0.0024063117, + 0.026658615, + -0.012413249, + 0.009333171, + 0.026446195, + -0.009107475, + -0.024560975, + 0.0011085629, + -0.02395027, + 0.0013857037, + 0.01926377, + -0.0020710877, + -0.031278733, + -0.015095043, + 0.0041720467, + -0.012798259, + 0.010162933, + 0.0063128346, + -0.010972782, + 0.045617033, + 0.016874054, + -0.010368714, + -0.0055992384, + -0.0092999805, + 0.0015782086, + -0.013581555, + 0.017843217, + -0.01615714, + 0.0036575939, + -0.027110007, + -0.013621384, + 0.022197811, + 0.0013964906, + -0.007348378, + 0.0145772705, + -0.003996137, + 0.0008364008, + -0.03411984, + 0.013030593, + -0.021454344, + -0.05034336, + 0.021095887, + -0.0055029863, + -0.025623072, + -0.023525432, + 0.007335102, + -0.043413185, + 0.016316453, + 0.016196968, + 0.0093132565, + -0.0110989055, + 0.0154535, + -0.045218747, + 0.0037737607, + 0.01639611, + 0.019887751, + -0.023366116, + -0.024043202, + 0.014258642, + 0.004271618, + -0.006877073, + 0.021387963, + -0.0019781543, + -0.036350243, + -0.009114114, + -0.037359234, + 0.01919739, + 0.011829097, + -0.015665919, + -0.0015591241, + 0.0144843375, + -0.003139822, + -0.024083031, + -0.015307462, + -0.0040990277, + -0.013223098, + 0.0024278855, + -0.008702551, + -0.0033207103, + -0.009804476, + -0.010554581, + 0.031066315, + 0.0044408897, + 0.025370823, + 0.009406189, + 0.025583243, + -0.002066109, + 0.015267633, + 0.008337456, + -0.009426104, + 0.01590489, + -0.011716249, + 0.007713474, + -0.029552827, + -0.013900184, + 0.0050150855, + -0.01650232, + -0.0015757193, + 0.008549875, + -0.020471904, + 0.008397198, + -0.013136802, + 0.021520725, + 0.0060406723, + 0.012858002, + -0.004723009, + -0.029313855, + 0.009240237, + -0.0212552, + -0.028118998, + 0.017803388, + -0.0314646, + 0.012353507, + 0.029632485, + -0.000016128512, + 0.016966987, + 0.009711542, + -0.037253026, + -0.015095043, + 0.013442155, + -0.00905437, + -0.000982439, + -0.0020495139, + 0.008337456, + -0.020644495, + 0.042085562, + -0.000744712, + 0.021135716, + -0.0072886352, + 0.01643594, + 0.013767422, + -0.0044707614, + -0.014763137, + 0.018852208, + -0.03080079, + -0.0049188333, + 0.0058846767, + 0.008330817, + 0.008257798, + 0.024202518, + 0.02307404, + 0.011065715, + 0.00036053188, + -0.00049412367, + 0.036270585, + 0.027043626, + 0.011902116, + -0.027773816, + 0.013289479, + 0.018374264, + -0.0033157317, + 0.0016636741, + 0.0020677685, + -0.012293763, + 0.008184779, + -0.034252603, + 0.010753725, + 0.008675998, + 0.00968499, + -0.003793675, + -0.011218391, + 0.010375353, + -0.0005737809, + 0.019781543, + 0.020591391, + 0.019954132, + -0.00053976063, + -0.0059444197, + -0.022675755, + -0.010003619, + 0.0038467797, + -0.0212552, + -0.033482585, + -0.015572986, + 0.0037737607, + 0.01451089, + 0.0036376796, + 0.007454588, + 0.013979842, + -0.013402327, + 0.014975557, + -0.010435095, + 0.0151747, + -0.030375952, + 0.023166973, + -0.0024760119, + -0.005881358, + 0.019914305, + -0.008596341, + 0.017737007, + -0.0036111271, + 0.012499545, + -0.02647275, + 0.0053901384, + 0.008556513, + 0.019648781, + 0.00874238, + -0.012439802, + -0.028623493, + -0.022330573, + -0.0029340407, + -0.016303178, + 0.007474502, + -0.016555425, + 0.060645696, + 0.0023631642, + -0.012054792, + 0.017604245, + 0.013103612, + 0.026061187, + 0.015533158, + 0.025742557, + 0.00013753316, + -0.013940013, + 0.02880936, + 0.010109829, + -0.0036111271, + -0.012419888, + -0.045457717, + 0.022835068, + -0.014139156, + 0.007819683, + -0.010461648, + -0.012008325, + 0.008895056, + 0.015984548, + 0.024043202, + -0.00059825886, + -0.0036376796, + -0.007939169, + 0.0242689, + -0.022197811, + -0.026313433, + -0.026724996, + 0.010939592, + 0.0023449094, + -0.012074706, + -0.018493751, + 0.017697178, + -0.0052142288, + -0.00360117, + 0.0056058764, + 0.01070062, + 0.0035248317, + 0.023671469, + 0.030880447, + -0.020299314, + -0.0145905465, + 0.018055636, + -0.013727593, + -0.023313012, + 0.013236375, + -0.0020113448 + ] + } + ], + "usage": { + "prompt_tokens": 4, + "total_tokens": 4 + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/embeddings.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/embeddings.yaml new file mode 100644 index 000000000000..889a5adace01 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/embeddings.yaml @@ -0,0 +1,1553 @@ +title: Return the embeddings for a given prompt. +parameters: + endpoint: "{endpoint}" + api-version: '2024-06-01' + deployment-id: deployment-afa0669ca01e4693ae3a93baf40f26d6 + body: + input: + - this is a test +responses: + '200': + body: + data: + - index: 0 + embedding: + - -0.012838088 + - -0.007421397 + - -0.017617522 + - -0.028278312 + - -0.018666342 + - 0.01737855 + - -0.01821495 + - -0.006950092 + - -0.009937238 + - -0.038580645 + - 0.010674067 + - 0.02412286 + - -0.013647936 + - 0.013189907 + - 0.0021125758 + - 0.012406612 + - 0.020790534 + - 0.00074595667 + - 0.008397198 + - -0.00535031 + - 0.008968075 + - 0.014351576 + - -0.014086051 + - 0.015055214 + - -0.022211088 + - -0.025198232 + - 0.0065186154 + - -0.036350243 + - 0.009180495 + - -0.009698266 + - 0.009446018 + - -0.008463579 + - -0.0040426035 + - -0.03443847 + - -0.00091273896 + - -0.0019217303 + - 0.002349888 + - -0.021560553 + - 0.016515596 + - -0.015572986 + - 0.0038666942 + - -8.432463e-05 + - 0.0032178196 + - -0.020365695 + - -0.009631885 + - -0.007647093 + - 0.0033837722 + - -0.026764825 + - -0.010501476 + - 0.020219658 + - 0.024640633 + - -0.0066912062 + - -0.036456455 + - -0.0040923897 + - -0.013966565 + - 0.017816665 + - 0.005366905 + - 0.022835068 + - 0.0103488 + - -0.0010811808 + - -0.028942121 + - 0.0074280356 + - -0.017033368 + - 0.0074877786 + - 0.021640211 + - 0.002499245 + - 0.013316032 + - 0.0021524043 + - 0.010129742 + - 0.0054731146 + - 0.03143805 + - 0.014856071 + - 0.0023366117 + - -0.0008243692 + - 0.022781964 + - 0.003038591 + - -0.017617522 + - 0.0013309394 + - 0.0022154662 + - 0.00097414135 + - 0.012041516 + - -0.027906578 + - -0.023817508 + - 0.013302756 + - -0.003003741 + - -0.006890349 + - 0.0016744611 + - 0.023658194 + - -0.015851786 + - -0.0045305043 + - -0.003038591 + - 0.017710455 + - 0.019237218 + - 0.016037652 + - -0.022503164 + - 0.025795663 + - -0.001129307 + - 0.032500144 + - -0.008178141 + - -0.019940857 + - -0.009877495 + - 0.00018918588 + - 0.023060765 + - -0.005692172 + - -0.018347712 + - -0.011039163 + - -0.0062066247 + - -5.24047e-05 + - 0.020126723 + - -0.0011691356 + - -0.015811957 + - 0.020086896 + - -0.009114114 + - -0.03056182 + - 0.0029025099 + - -0.006591635 + - -0.014046223 + - -0.01590489 + - -0.02307404 + - -0.008861865 + - -0.004832538 + - 0.010030171 + - 0.02311387 + - -0.012652221 + - 0.024906157 + - 0.003860056 + - -0.01936998 + - -0.02957938 + - -0.008357369 + - -0.0016371218 + - 0.027800368 + - 0.0077333883 + - 0.021626934 + - 0.02140124 + - -0.030482162 + - 0.026406368 + - -0.008277712 + - 0.012884554 + - -0.043784916 + - -0.0145639945 + - -0.0070297495 + - 0.034889862 + - -0.00041508878 + - -0.010528029 + - -0.009572142 + - 0.015692472 + - 0.037810627 + - -0.0022021902 + - 0.008662722 + - -0.016794397 + - 0.0003090866 + - -0.0060506295 + - 0.015227805 + - 0.0006650548 + - 0.01842737 + - 0.036801632 + - -0.002461076 + - -0.0029390194 + - -0.0057120863 + - -0.012486269 + - -0.0046831807 + - -0.0017474802 + - -0.0036210844 + - -0.01178263 + - 0.017869769 + - 0.039111692 + - 0.010946229 + - 0.018467197 + - 0.0027780454 + - -0.005851486 + - -0.016489044 + - 0.03186289 + - -0.040333103 + - 0.016648358 + - -0.006870435 + - 0.0072687212 + - 2.370982e-06 + - 0.006465511 + - -0.018201673 + - -0.00020526254 + - -0.025410652 + - 0.02010017 + - 0.017537864 + - 0.022821793 + - 0.0064555537 + - -0.0012969191 + - 0.02157383 + - -0.0053536287 + - -0.0087622935 + - -0.010952868 + - 0.017564416 + - 0.02185263 + - 0.0004733796 + - 0.0018337755 + - -0.6954606 + - -0.011231667 + - 0.02748174 + - 0.003929756 + - 0.0144843375 + - 0.045192193 + - 0.01898497 + - -0.0070363875 + - -0.007813046 + - 0.017604245 + - -0.017790113 + - 0.011165286 + - -0.0036376796 + - -0.014736585 + - 0.0016421003 + - -0.019144284 + - -0.0072222543 + - -0.023127146 + - 0.006936816 + - 0.025198232 + - 0.0030219958 + - 0.011722887 + - -0.004271618 + - -0.0011127117 + - -0.0051047 + - 0.00077333883 + - 0.018599961 + - 0.0074877786 + - 0.010820106 + - 0.0033406245 + - -0.015055214 + - 0.02384406 + - 0.006090458 + - 0.00891497 + - 0.023366116 + - -0.011078991 + - -0.019582398 + - 0.0011566891 + - 0.015413672 + - 0.01793615 + - -0.014736585 + - 0.002492607 + - 0.027800368 + - 0.023923717 + - -0.007421397 + - 0.0016105693 + - 0.011337877 + - -0.015041938 + - -0.008768932 + - -0.003982861 + - 0.002884255 + - -0.007832959 + - 0.0025457118 + - -0.0023548664 + - -0.0061767534 + - -0.016754568 + - 0.0006036523 + - 0.0105346665 + - 0.0055361767 + - 0.01478969 + - -0.0011251582 + - 0.009605332 + - -0.0037140178 + - -0.017537864 + - -0.021733144 + - 0.012897831 + - -0.024481317 + - 0.022290744 + - 0.0056523434 + - -0.005366905 + - 0.0020412162 + - 0.013435517 + - -0.003408665 + - -0.01705992 + - 0.029446619 + - 0.022011945 + - 0.009226961 + - -0.003310753 + - -0.007939169 + - 0.021308305 + - 0.0026718357 + - 0.002129171 + - -0.020047067 + - -0.007474502 + - 0.021534001 + - -0.0110590765 + - -0.018374264 + - -0.001664504 + - -0.003923118 + - 0.015387119 + - 0.025516862 + - 0.0016421003 + - -0.017498035 + - -0.01825478 + - 0.01451089 + - -0.008198055 + - -0.011656506 + - 0.0044242945 + - 0.031491153 + - 0.01017621 + - -0.010408543 + - -0.009034456 + - -0.0023283141 + - 0.012021601 + - 0.015639367 + - 0.011736163 + - 0.007912617 + - 0.02031259 + - 0.022104878 + - -0.02241023 + - 0.00041156227 + - -0.009817752 + - -0.030880447 + - -0.0017823302 + - 0.0030933553 + - -0.04128899 + - -0.0007783174 + - 0.012393335 + - 0.0122273825 + - -0.009087561 + - 0.022728859 + - -0.002884255 + - 0.028065892 + - 0.0047396044 + - 0.008065294 + - 0.015519881 + - 0.0133956885 + - -0.02279524 + - -0.011729525 + - 0.0037206558 + - -0.0046732235 + - 0.003587894 + - 0.024401661 + - -0.013574918 + - 0.012685412 + - -0.0041620894 + - 0.020578114 + - 0.007394845 + - 0.014139156 + - -0.012512821 + - -0.021042781 + - 0.022423506 + - -0.015360567 + - 0.004009413 + - 0.0104550095 + - -0.024799947 + - -0.0081449505 + - -0.00063850236 + - 0.0070231115 + - -0.0009633545 + - -0.015705748 + - -0.0028942123 + - -0.008815398 + - 0.007461226 + - -0.014417957 + - -0.012931022 + - 0.0015674217 + - -0.02506547 + - -0.0063128346 + - -0.013422241 + - -0.0058614435 + - -0.0006007482 + - -0.015002109 + - 0.0037040606 + - -0.008410474 + - -0.0016089098 + - -0.018653065 + - 0.020538285 + - -0.016980262 + - -0.042244878 + - -0.017498035 + - 0.006727716 + - -0.01877255 + - 0.008987989 + - 0.00077665783 + - -0.0007119364 + - -0.0067243967 + - 0.0038467797 + - -0.018055636 + - -0.01440468 + - 0.007534245 + - 0.0051212953 + - 0.002741536 + - 0.011523744 + - -0.0018603279 + - 0.023684746 + - 0.016196968 + - 0.01731217 + - -0.01992758 + - 0.009372999 + - -0.01982137 + - 0.001150051 + - -0.014417957 + - 0.005672258 + - -0.015785405 + - 0.0049387473 + - -0.0051445286 + - 0.012632307 + - 0.0011666464 + - 0.024587527 + - 0.04259006 + - -0.0025672857 + - 0.02311387 + - -0.014524166 + - 0.0013848739 + - -0.04105002 + - -0.010089914 + - -0.009087561 + - 0.015440224 + - 0.009207047 + - 0.0128048975 + - -0.030216638 + - -0.02549031 + - 0.00499849 + - 0.02737553 + - 0.024985814 + - -0.015055214 + - 0.007580712 + - -0.003979542 + - 0.0016304837 + - 0.0010446712 + - 0.0033373055 + - 0.0066314633 + - -0.011948583 + - -0.021281753 + - 0.012161002 + - 0.030747686 + - 0.03555367 + - 0.023751127 + - -0.03159736 + - -0.0110590765 + - 0.015758853 + - -0.0012197511 + - -0.0023249951 + - -0.0007488608 + - 0.0074877786 + - 0.01643594 + - -0.008098484 + - 0.03730613 + - -0.0010056724 + - -3.4798173e-05 + - 0.011702972 + - 0.039563086 + - -0.012280487 + - 0.027747264 + - 0.018387541 + - 0.033057746 + - -0.004835857 + - -0.00471969 + - 0.025450481 + - -0.0051146573 + - 0.014603823 + - 0.00022258384 + - 0.00060863094 + - 0.015665919 + - -0.021626934 + - -0.013674489 + - 0.0062066247 + - 0.018560132 + - 0.031942543 + - 0.012054792 + - 0.004902238 + - 0.0028510645 + - -0.027667606 + - 0.009817752 + - -0.002580562 + - 0.0069036256 + - 0.020047067 + - -0.009704905 + - -0.012619031 + - -0.0056755766 + - -0.0036443176 + - 0.019383255 + - 0.0030701219 + - 0.024972538 + - 0.009100837 + - 0.026353262 + - 0.012758431 + - 0.029074885 + - 0.021202097 + - -0.0038102702 + - -0.032048754 + - 0.003996137 + - 0.0029738694 + - 0.0032277768 + - -0.026127568 + - -0.02213143 + - 0.0028742978 + - 0.0010637557 + - 0.000580419 + - 0.0021789568 + - 0.00083764544 + - 0.026924139 + - -0.03265946 + - 0.0059211864 + - 0.021892458 + - 0.01178263 + - 0.0018188398 + - 0.009718181 + - -0.020047067 + - 0.017989255 + - 0.0046035233 + - -0.010561219 + - -0.010342162 + - 0.009505761 + - -0.018334435 + - -0.00667793 + - -0.024534423 + - 0.00035347888 + - 0.00082561385 + - -0.006143563 + - 0.016820949 + - -0.0013500239 + - -0.0069832825 + - 0.015347291 + - -0.005094743 + - 0.001838754 + - 0.017073197 + - 0.02521151 + - 0.006209944 + - -0.015612815 + - -0.009744733 + - -0.019794818 + - 0.007786493 + - 0.037624758 + - 0.017564416 + - 0.0076802834 + - 0.0026203906 + - 0.0022403593 + - -0.024560975 + - -0.04062518 + - -0.016581977 + - 0.00789934 + - 0.0099305995 + - 0.006996559 + - 0.011078991 + - 0.016236795 + - -0.0068969876 + - 0.01374087 + - 0.014922452 + - -0.0042882133 + - 0.00022901449 + - -0.0006692036 + - 0.001359981 + - -7.581957e-05 + - 0.0042616613 + - 0.0066381013 + - 0.012512821 + - 0.021534001 + - 0.0032775626 + - 0.016913882 + - -0.00789934 + - -0.009200408 + - -0.020286039 + - -0.017033368 + - 0.014378128 + - 0.009233599 + - 0.0070828544 + - -0.013229736 + - 0.025928425 + - -0.011862287 + - 0.008383922 + - 0.012632307 + - -0.0003097089 + - 0.007593988 + - 0.0059079104 + - -0.0026369859 + - -0.0262205 + - 0.003335646 + - -0.0067609064 + - -0.0042882133 + - 0.008549875 + - -0.007600626 + - -0.012592479 + - 0.028623493 + - -0.0030502076 + - -0.006989921 + - -0.015785405 + - 0.010050085 + - 0.016714739 + - -0.023724575 + - -0.006346025 + - -0.014245366 + - -0.032154962 + - -0.03388087 + - -0.024308728 + - -0.002461076 + - -0.003733932 + - -0.02195884 + - -0.021069333 + - -0.022144707 + - -0.007872788 + - -0.017179407 + - -0.009034456 + - -0.010893124 + - -0.02478667 + - -0.020153277 + - -0.023976821 + - 0.014656927 + - 0.0005368565 + - -0.015878338 + - 0.010123105 + - -0.0030717815 + - 0.01555971 + - 0.0018321159 + - -0.036244035 + - 0.00017176087 + - -0.013375774 + - -0.010375353 + - 0.026512576 + - 0.016581977 + - 0.013847079 + - 0.015719024 + - 0.013223098 + - 0.004975257 + - -0.0010579474 + - -0.0034385365 + - -0.029048331 + - 0.017298892 + - -0.022529716 + - 0.008463579 + - -0.014723309 + - -0.005814977 + - -0.009027818 + - -0.009738095 + - -0.0104682855 + - -0.005044957 + - 0.007905979 + - 0.011656506 + - 0.003153098 + - -0.0005231654 + - 0.019954132 + - -0.021985391 + - -0.005307162 + - 0.0021839354 + - -0.025184957 + - 0.013926737 + - -0.0059908866 + - 0.0065717204 + - 0.009884133 + - -0.0062298584 + - 0.03388087 + - 0.0028577026 + - -0.015931444 + - 0.0010986058 + - -0.025808938 + - 0.0022835068 + - 0.014152432 + - 0.015227805 + - 0.013701041 + - -0.007872788 + - -0.030614924 + - -0.026393091 + - 0.0010753724 + - -0.016940435 + - 0.013647936 + - -0.007408121 + - -0.024308728 + - -0.031915992 + - -0.018161846 + - 0.00072521257 + - 0.028862465 + - 0.012234021 + - -0.019555846 + - -0.027641054 + - -0.00082810316 + - -0.0019150922 + - -0.016276624 + - -0.01125822 + - -0.034146395 + - -0.015294186 + - 0.006671292 + - -0.015533158 + - 0.013674489 + - -0.0011766035 + - -0.017325444 + - -0.023233354 + - -0.013189907 + - 0.0005580154 + - -0.03188944 + - -0.007056302 + - -0.0059942054 + - 0.03411984 + - 0.04317421 + - 0.029420065 + - 0.006488744 + - -0.0022436783 + - 0.013063784 + - 0.00012207884 + - 0.008118398 + - -0.023246631 + - 0.0051909955 + - -0.00894816 + - 0.0081316745 + - 0.0023200165 + - 0.011510468 + - -0.0005770999 + - 0.00016979019 + - 0.010129742 + - 0.015506605 + - -0.0073815687 + - 0.0031995648 + - -0.026578957 + - -0.016674912 + - 0.0049652997 + - 0.0072687212 + - -0.016568702 + - -0.001964878 + - -0.015692472 + - -0.0048955996 + - 0.027773816 + - 0.012864641 + - 0.01594472 + - 0.008244522 + - 0.017139578 + - -0.01772373 + - -0.0012521119 + - 0.011689696 + - 0.0111121815 + - -0.0036476366 + - 0.0012570905 + - -0.007826322 + - -0.016754568 + - 0.011948583 + - -0.0045968853 + - 0.023963546 + - -0.0052739717 + - 0.014656927 + - 0.009731457 + - 0.010727172 + - -0.01705992 + - -0.0026071144 + - 0.010760362 + - 0.000919377 + - -0.006365939 + - -0.03013698 + - -0.010554581 + - -0.018613236 + - 0.013886908 + - 0.029420065 + - -0.013030593 + - 0.016860778 + - -0.019237218 + - -0.022118153 + - 0.007919255 + - -0.0004003605 + - 0.046546366 + - 0.01349526 + - 0.006352663 + - 0.014258642 + - 0.0031813101 + - -0.027017072 + - 0.0070828544 + - -0.020219658 + - 0.0037140178 + - 0.023366116 + - 0.040386207 + - -0.016382834 + - -0.0023681426 + - 0.0064522345 + - 0.016528873 + - 0.0006804054 + - -0.02891557 + - -0.0043545947 + - 0.01101261 + - -0.0014778073 + - -0.018055636 + - -0.0077001974 + - -0.0358723 + - 0.003373815 + - -0.00071940426 + - -0.011822458 + - -0.024295451 + - -0.009791199 + - -0.026565682 + - 0.020989677 + - -0.035155386 + - 0.01832116 + - 0.014776413 + - -0.028012788 + - -0.007262083 + - 0.0030402504 + - -0.029446619 + - 0.00010174965 + - 0.009758009 + - 0.03767786 + - -0.0154535 + - 0.009346447 + - 0.016077481 + - 0.0041189417 + - -0.027800368 + - 0.01720596 + - -0.011158649 + - 0.027800368 + - -0.03003077 + - -0.0072819972 + - 0.0014296811 + - 0.0145374425 + - 0.0043280423 + - -0.017086472 + - -0.01611731 + - -0.01258584 + - -0.016927158 + - 0.007607264 + - 0.018825656 + - 0.011331239 + - -0.0057784673 + - 0.001569911 + - -0.013900184 + - -0.014776413 + - -0.0050814664 + - -0.0012454737 + - -0.0115967635 + - -0.017458206 + - -0.013203184 + - -0.0063692583 + - -0.01244644 + - 0.011882202 + - 0.0007708495 + - -0.02035242 + - 0.016250072 + - 0.018414093 + - -0.029526275 + - 0.012751793 + - -0.01555971 + - 0.0013840442 + - -0.019502742 + - 0.0063758963 + - 0.0037538463 + - -0.035686433 + - 0.027534844 + - -0.016409386 + - -0.03247359 + - -0.008782208 + - -0.0059842486 + - 0.014338299 + - 0.009233599 + - -0.0053171194 + - 0.006160158 + - 0.0072952732 + - 0.01401967 + - 0.008815398 + - -0.023790956 + - 0.013096974 + - -0.0031365028 + - 0.005044957 + - 0.0005356118 + - -0.009379637 + - 0.0066248253 + - -0.00010724682 + - 0.010289057 + - 0.008815398 + - -0.02279524 + - -0.019701885 + - -0.0027747264 + - 0.016183691 + - -0.014205537 + - -0.003933075 + - -0.013375774 + - -0.005751915 + - -0.010116466 + - 0.004988533 + - -0.005904591 + - -0.008656085 + - -0.017431654 + - -0.011988411 + - -0.01594472 + - 0.00660823 + - -0.027216217 + - 0.0073218257 + - -0.029977666 + - -0.004593566 + - -0.026671892 + - -0.028517283 + - -0.0050084474 + - 0.009844304 + - 0.025729282 + - -0.013780698 + - -0.026751548 + - 0.004905557 + - -0.035951957 + - -0.026738273 + - -0.019768266 + - 0.0048690476 + - 0.005250738 + - 0.0014603822 + - -0.018892037 + - 0.017683903 + - 0.0067177587 + - 0.027694158 + - -0.002618731 + - -0.012419888 + - 0.01772373 + - -0.0032593077 + - 0.006611549 + - 0.016648358 + - -0.03789028 + - -0.023100592 + - 0.023684746 + - 0.0031248862 + - 0.016382834 + - 0.019967409 + - -0.008941523 + - -0.02014 + - 0.0073882067 + - 0.011357792 + - -0.0031796505 + - -0.0030253148 + - -0.0010206081 + - -0.017577693 + - -0.009598695 + - 0.002915786 + - 0.001325131 + - -0.0029207645 + - -0.010780277 + - -0.00325101 + - -0.00811176 + - -0.00073434 + - -0.030083876 + - -0.012864641 + - -0.012745155 + - -0.011769353 + - 0.018785827 + - -0.008264436 + - -0.002675155 + - 0.024255622 + - 0.005483072 + - -0.018480474 + - -0.005426648 + - 0.015095043 + - 0.00044392303 + - 0.011271496 + - -0.0027548121 + - 0.0026884312 + - -0.00894816 + - -0.015161424 + - -0.014975557 + - -0.024600804 + - 0.004457485 + - -0.015519881 + - -0.012366783 + - -0.012579202 + - 0.01478969 + - 0.0075541595 + - -0.017962702 + - -0.0017441611 + - -0.014059499 + - 0.005499667 + - -0.0026884312 + - 0.0031929268 + - 0.0010853296 + - -0.008045379 + - 0.017471483 + - 0.02590187 + - -0.018546855 + - -0.007826322 + - 0.009333171 + - 0.0157323 + - 8.6036016e-05 + - 0.004776114 + - 0.22155327 + - 0.006787459 + - -0.0017823302 + - 0.024919434 + - 0.0023449094 + - 0.03210186 + - 0.0047329664 + - -0.010879848 + - 0.0044342517 + - 0.015334014 + - 0.029499723 + - 0.019715162 + - -0.008569789 + - -0.0018901994 + - -0.0077400263 + - -0.019210665 + - -0.005088105 + - -0.023153698 + - -0.032739118 + - -0.029313855 + - 0.00082146504 + - -0.0212552 + - 0.0044309325 + - -0.005446562 + - 0.018613236 + - -0.009751371 + - -0.013023955 + - -0.001996409 + - 0.01915756 + - 0.017431654 + - -0.031092867 + - -0.0070231115 + - 0.025330994 + - -0.00018099198 + - -0.025131851 + - -0.011025886 + - 0.0116498675 + - -0.02506547 + - 0.029234199 + - -0.012287126 + - 0.0069766445 + - 0.0018752636 + - 0.014271918 + - 0.005108019 + - -0.0109064 + - 0.014391404 + - 0.0062597296 + - -0.031411495 + - 0.00014935728 + - 0.013236375 + - -0.02891557 + - -0.0006671292 + - 0.008662722 + - 0.012161002 + - 0.020963125 + - -0.0133691365 + - 0.02653913 + - -0.017989255 + - 0.007978998 + - 0.0093398085 + - -0.02024621 + - 0.03265946 + - -0.02846418 + - 0.025397375 + - -0.024693737 + - -0.0027050264 + - -0.019330151 + - -0.0104417335 + - 0.015626092 + - -0.006541849 + - 0.004653309 + - -0.025118576 + - 0.0038268655 + - 0.004045923 + - -0.017564416 + - -0.02444149 + - 0.030296294 + - 0.028756255 + - 0.03927101 + - 0.010767001 + - -0.012034878 + - -0.007122683 + - -0.022476612 + - -0.034942966 + - -0.028411074 + - -0.03927101 + - -0.0037505273 + - -0.0038799702 + - -0.00037111135 + - -0.009718181 + - -0.013455432 + - -0.015400395 + - -0.0066978442 + - -0.010760362 + - 0.015121595 + - 0.03111942 + - 0.007992274 + - 0.0270569 + - -0.003104972 + - 0.010056724 + - -0.018414093 + - 0.006472149 + - 0.021281753 + - 0.0043579135 + - -0.00021490853 + - 0.0008546556 + - -0.01269205 + - -0.003936394 + - 0.0008870163 + - 0.0009816092 + - 0.0054664765 + - -0.031278733 + - 0.017245788 + - 0.00027734818 + - 0.005161124 + - 0.0048093046 + - -0.003923118 + - -0.027149836 + - 0.006950092 + - -0.00615352 + - 0.014205537 + - 0.0016620146 + - 0.0047396044 + - 0.0039994563 + - -0.015440224 + - -0.0055627287 + - -0.026273604 + - 0.0013276202 + - 0.0021009592 + - -0.034810204 + - 0.0064522345 + - 0.00042608313 + - 0.02307404 + - -0.005957696 + - 0.0016869075 + - -0.0032775626 + - -0.009041094 + - -0.01227385 + - -0.04349284 + - 0.015652644 + - 0.013468708 + - -0.0023249951 + - -0.011171925 + - 0.0030352718 + - -0.0061203293 + - -0.023153698 + - 0.046068422 + - -0.005582643 + - -0.02405648 + - 0.005433286 + - -0.02814555 + - -0.0036874653 + - 0.0067841397 + - 0.006628144 + - 0.029844904 + - -0.0044276137 + - -0.029127989 + - -0.04548427 + - 0.022091601 + - 0.0038069512 + - -0.030269742 + - 0.0051578046 + - 0.043572497 + - -0.0144843375 + - -0.02891557 + - -0.010461648 + - -0.17375894 + - 0.029154541 + - 0.019648781 + - -0.00038335036 + - 0.0029572742 + - -0.0026469429 + - 0.035925403 + - -0.012021601 + - 0.0015566348 + - -0.0033124126 + - 0.0010430117 + - -0.010620962 + - -0.022582822 + - 0.00601412 + - 0.008364008 + - -0.0016586956 + - -0.0011102224 + - -0.013860356 + - 0.022542993 + - 0.020564837 + - 0.018414093 + - -0.008908332 + - 0.032951534 + - -0.011908754 + - 0.010169571 + - -0.011198477 + - 0.0029108075 + - 0.033084296 + - 0.0029008503 + - -0.0010015236 + - -0.019794818 + - 0.005844848 + - 0.011669782 + - 0.0052208668 + - 0.010129742 + - 0.0037737607 + - 0.02880936 + - -0.018599961 + - -0.015095043 + - 0.026578957 + - 0.019662056 + - 0.006823968 + - -0.00045885876 + - -0.019396532 + - -0.0047993474 + - 0.017192682 + - 0.039589636 + - -0.00874238 + - 0.02146762 + - -0.007667007 + - 0.018785827 + - -0.012758431 + - -0.010010257 + - -0.02052501 + - 0.016090758 + - 0.0061867107 + - -0.0145507185 + - 0.008065294 + - 0.0104284575 + - -0.0022386997 + - -0.008324179 + - -0.021640211 + - 0.01705992 + - -0.010541305 + - -0.01639611 + - -0.0074413116 + - -0.034703992 + - 0.007016473 + - -0.003083398 + - 0.0013691084 + - -0.005108019 + - -0.007886064 + - 0.00053270767 + - -0.018865485 + - 0.025503585 + - 0.005101381 + - -0.027534844 + - 0.015028661 + - -0.009286704 + - 0.006233177 + - 4.343289e-05 + - 0.036031615 + - 0.00957878 + - 0.019250493 + - 0.0024411618 + - 0.0023664832 + - -0.0030269742 + - -0.007939169 + - 0.0058581247 + - 0.00587472 + - 0.036589216 + - -0.035288148 + - -0.012997403 + - -0.0110989055 + - -0.002492607 + - 0.008151589 + - -0.008085207 + - -0.00734174 + - -0.0016802694 + - 0.008403837 + - -0.007793131 + - -0.003913161 + - -0.025437204 + - 0.027123282 + - 0.019330151 + - -0.008729103 + - 0.003943032 + - 0.010289057 + - 0.029977666 + - 0.0014836156 + - -0.024282174 + - -0.0024361832 + - 0.0110325245 + - 0.021719867 + - 0.012844726 + - 0.015002109 + - 0.020737428 + - -0.013037231 + - 0.014802966 + - -0.0027332383 + - 0.041634172 + - -0.00926679 + - -0.018759275 + - 0.018666342 + - 0.005386819 + - -0.008822037 + - -0.068399 + - -0.054804165 + - 0.027800368 + - 0.04954679 + - -0.00437119 + - 0.029127989 + - 0.03180978 + - 0.021321582 + - -0.022503164 + - 0.010554581 + - -0.006823968 + - -0.021387963 + - -0.021865906 + - -0.0074479496 + - 0.0037206558 + - 0.004132218 + - 0.01073381 + - -0.0021673401 + - -0.0012819833 + - 0.041235887 + - -0.010202762 + - 0.004839176 + - 0.0081715025 + - -0.030402504 + - -0.023764404 + - -0.010800191 + - -0.018374264 + - 0.033641897 + - 0.005416691 + - -0.0055096243 + - -0.0032775626 + - -0.018095464 + - 0.008563151 + - -0.02339267 + - -0.013674489 + - 0.0023382711 + - -0.028411074 + - -0.0024063117 + - 0.026658615 + - -0.012413249 + - 0.009333171 + - 0.026446195 + - -0.009107475 + - -0.024560975 + - 0.0011085629 + - -0.02395027 + - 0.0013857037 + - 0.01926377 + - -0.0020710877 + - -0.031278733 + - -0.015095043 + - 0.0041720467 + - -0.012798259 + - 0.010162933 + - 0.0063128346 + - -0.010972782 + - 0.045617033 + - 0.016874054 + - -0.010368714 + - -0.0055992384 + - -0.0092999805 + - 0.0015782086 + - -0.013581555 + - 0.017843217 + - -0.01615714 + - 0.0036575939 + - -0.027110007 + - -0.013621384 + - 0.022197811 + - 0.0013964906 + - -0.007348378 + - 0.0145772705 + - -0.003996137 + - 0.0008364008 + - -0.03411984 + - 0.013030593 + - -0.021454344 + - -0.05034336 + - 0.021095887 + - -0.0055029863 + - -0.025623072 + - -0.023525432 + - 0.007335102 + - -0.043413185 + - 0.016316453 + - 0.016196968 + - 0.0093132565 + - -0.0110989055 + - 0.0154535 + - -0.045218747 + - 0.0037737607 + - 0.01639611 + - 0.019887751 + - -0.023366116 + - -0.024043202 + - 0.014258642 + - 0.004271618 + - -0.006877073 + - 0.021387963 + - -0.0019781543 + - -0.036350243 + - -0.009114114 + - -0.037359234 + - 0.01919739 + - 0.011829097 + - -0.015665919 + - -0.0015591241 + - 0.0144843375 + - -0.003139822 + - -0.024083031 + - -0.015307462 + - -0.0040990277 + - -0.013223098 + - 0.0024278855 + - -0.008702551 + - -0.0033207103 + - -0.009804476 + - -0.010554581 + - 0.031066315 + - 0.0044408897 + - 0.025370823 + - 0.009406189 + - 0.025583243 + - -0.002066109 + - 0.015267633 + - 0.008337456 + - -0.009426104 + - 0.01590489 + - -0.011716249 + - 0.007713474 + - -0.029552827 + - -0.013900184 + - 0.0050150855 + - -0.01650232 + - -0.0015757193 + - 0.008549875 + - -0.020471904 + - 0.008397198 + - -0.013136802 + - 0.021520725 + - 0.0060406723 + - 0.012858002 + - -0.004723009 + - -0.029313855 + - 0.009240237 + - -0.0212552 + - -0.028118998 + - 0.017803388 + - -0.0314646 + - 0.012353507 + - 0.029632485 + - -1.6128512e-05 + - 0.016966987 + - 0.009711542 + - -0.037253026 + - -0.015095043 + - 0.013442155 + - -0.00905437 + - -0.000982439 + - -0.0020495139 + - 0.008337456 + - -0.020644495 + - 0.042085562 + - -0.000744712 + - 0.021135716 + - -0.0072886352 + - 0.01643594 + - 0.013767422 + - -0.0044707614 + - -0.014763137 + - 0.018852208 + - -0.03080079 + - -0.0049188333 + - 0.0058846767 + - 0.008330817 + - 0.008257798 + - 0.024202518 + - 0.02307404 + - 0.011065715 + - 0.00036053188 + - -0.00049412367 + - 0.036270585 + - 0.027043626 + - 0.011902116 + - -0.027773816 + - 0.013289479 + - 0.018374264 + - -0.0033157317 + - 0.0016636741 + - 0.0020677685 + - -0.012293763 + - 0.008184779 + - -0.034252603 + - 0.010753725 + - 0.008675998 + - 0.00968499 + - -0.003793675 + - -0.011218391 + - 0.010375353 + - -0.0005737809 + - 0.019781543 + - 0.020591391 + - 0.019954132 + - -0.00053976063 + - -0.0059444197 + - -0.022675755 + - -0.010003619 + - 0.0038467797 + - -0.0212552 + - -0.033482585 + - -0.015572986 + - 0.0037737607 + - 0.01451089 + - 0.0036376796 + - 0.007454588 + - 0.013979842 + - -0.013402327 + - 0.014975557 + - -0.010435095 + - 0.0151747 + - -0.030375952 + - 0.023166973 + - -0.0024760119 + - -0.005881358 + - 0.019914305 + - -0.008596341 + - 0.017737007 + - -0.0036111271 + - 0.012499545 + - -0.02647275 + - 0.0053901384 + - 0.008556513 + - 0.019648781 + - 0.00874238 + - -0.012439802 + - -0.028623493 + - -0.022330573 + - -0.0029340407 + - -0.016303178 + - 0.007474502 + - -0.016555425 + - 0.060645696 + - 0.0023631642 + - -0.012054792 + - 0.017604245 + - 0.013103612 + - 0.026061187 + - 0.015533158 + - 0.025742557 + - 0.00013753316 + - -0.013940013 + - 0.02880936 + - 0.010109829 + - -0.0036111271 + - -0.012419888 + - -0.045457717 + - 0.022835068 + - -0.014139156 + - 0.007819683 + - -0.010461648 + - -0.012008325 + - 0.008895056 + - 0.015984548 + - 0.024043202 + - -0.00059825886 + - -0.0036376796 + - -0.007939169 + - 0.0242689 + - -0.022197811 + - -0.026313433 + - -0.026724996 + - 0.010939592 + - 0.0023449094 + - -0.012074706 + - -0.018493751 + - 0.017697178 + - -0.0052142288 + - -0.00360117 + - 0.0056058764 + - 0.01070062 + - 0.0035248317 + - 0.023671469 + - 0.030880447 + - -0.020299314 + - -0.0145905465 + - 0.018055636 + - -0.013727593 + - -0.023313012 + - 0.013236375 + - -0.0020113448 + usage: + prompt_tokens: 4 + total_tokens: 4 diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/image_generation.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/image_generation.json new file mode 100644 index 000000000000..2f45e6f162ce --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/image_generation.json @@ -0,0 +1,67 @@ +{ + "title": "Creates images given a prompt.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-06-01", + "deployment-id": "", + "body": { + "prompt": "In the style of WordArt, Microsoft Clippy wearing a cowboy hat.", + "n": 1, + "style": "natural", + "quality": "standard" + } + }, + "responses": { + "200": { + "body": { + "created": 1698342300, + "data": [ + { + "revised_prompt": "A vivid, natural representation of Microsoft Clippy wearing a cowboy hat.", + "prompt_filter_results": { + "sexual": { + "severity": "safe", + "filtered": false + }, + "violence": { + "severity": "safe", + "filtered": false + }, + "hate": { + "severity": "safe", + "filtered": false + }, + "self_harm": { + "severity": "safe", + "filtered": false + }, + "profanity": { + "detected": false, + "filtered": false + } + }, + "url": "https://dalletipusw2.blob.core.windows.net/private/images/e5451cc6-b1ad-4747-bd46-b89a3a3b8bc3/generated_00.png?se=2023-10-27T17%3A45%3A09Z&...", + "content_filter_results": { + "sexual": { + "severity": "safe", + "filtered": false + }, + "violence": { + "severity": "safe", + "filtered": false + }, + "hate": { + "severity": "safe", + "filtered": false + }, + "self_harm": { + "severity": "safe", + "filtered": false + } + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/image_generation.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/image_generation.yaml new file mode 100644 index 000000000000..c94126435a4a --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/examples/image_generation.yaml @@ -0,0 +1,46 @@ +title: "Creates images given a prompt." +parameters: + endpoint: "{endpoint}" + api-version: "2024-06-01" + deployment-id: "" + body: + prompt: "In the style of WordArt, Microsoft Clippy wearing a cowboy hat." + n: 1 + style: "natural" + quality: "standard" +responses: + '200': + body: + created: 1698342300 + data: + - revised_prompt: "A vivid, natural representation of Microsoft Clippy wearing a cowboy hat." + prompt_filter_results: + sexual: + severity: "safe" + filtered: false + violence: + severity: "safe" + filtered: false + hate: + severity: "safe" + filtered: false + self_harm: + severity: "safe" + filtered: false + profanity: + detected: false + filtered: false + url: "https://dalletipusw2.blob.core.windows.net/private/images/e5451cc6-b1ad-4747-bd46-b89a3a3b8bc3/generated_00.png?se=2023-10-27T17%3A45%3A09Z&..." + content_filter_results: + sexual: + severity: "safe" + filtered: false + violence: + severity: "safe" + filtered: false + hate: + severity: "safe" + filtered: false + self_harm: + severity: "safe" + filtered: false \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/inference.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/inference.json new file mode 100644 index 000000000000..79510e374a9d --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/inference.json @@ -0,0 +1,3082 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "Azure OpenAI Service API", + "description": "Azure OpenAI APIs for completions and search", + "version": "2024-06-01" + }, + "servers": [ + { + "url": "https://{endpoint}/openai", + "variables": { + "endpoint": { + "default": "your-resource-name.openai.azure.com" + } + } + } + ], + "security": [ + { + "bearer": [ + "api.read" + ] + }, + { + "apiKey": [] + } + ], + "paths": { + "/deployments/{deployment-id}/completions": { + "post": { + "summary": "Creates a completion for the provided prompt, parameters and chosen model.", + "operationId": "Completions_Create", + "parameters": [ + { + "in": "path", + "name": "deployment-id", + "required": true, + "schema": { + "type": "string", + "example": "davinci", + "description": "Deployment id of the model which was deployed." + } + }, + { + "in": "query", + "name": "api-version", + "required": true, + "schema": { + "type": "string", + "example": "2024-06-01", + "description": "api version" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "prompt": { + "description": "The prompt(s) to generate completions for, encoded as a string or array of strings.\nNote that <|endoftext|> is the document separator that the model sees during training, so if a prompt is not specified the model will generate as if from the beginning of a new document. Maximum allowed size of string list is 2048.", + "oneOf": [ + { + "type": "string", + "default": "", + "example": "This is a test.", + "nullable": true + }, + { + "type": "array", + "items": { + "type": "string", + "default": "", + "example": "This is a test.", + "nullable": false + }, + "description": "Array size minimum of 1 and maximum of 2048" + } + ] + }, + "max_tokens": { + "description": "The token count of your prompt plus max_tokens cannot exceed the model's context length. Most models have a context length of 2048 tokens (except for the newest models, which support 4096). Has minimum of 0.", + "type": "integer", + "default": 16, + "example": 16, + "nullable": true + }, + "temperature": { + "description": "What sampling temperature to use. Higher values means the model will take more risks. Try 0.9 for more creative applications, and 0 (argmax sampling) for ones with a well-defined answer.\nWe generally recommend altering this or top_p but not both.", + "type": "number", + "default": 1, + "example": 1, + "nullable": true + }, + "top_p": { + "description": "An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.\nWe generally recommend altering this or temperature but not both.", + "type": "number", + "default": 1, + "example": 1, + "nullable": true + }, + "logit_bias": { + "description": "Defaults to null. Modify the likelihood of specified tokens appearing in the completion. Accepts a json object that maps tokens (specified by their token ID in the GPT tokenizer) to an associated bias value from -100 to 100. You can use this tokenizer tool (which works for both GPT-2 and GPT-3) to convert text to token IDs. Mathematically, the bias is added to the logits generated by the model prior to sampling. The exact effect will vary per model, but values between -1 and 1 should decrease or increase likelihood of selection; values like -100 or 100 should result in a ban or exclusive selection of the relevant token. As an example, you can pass {\"50256\" : -100} to prevent the <|endoftext|> token from being generated.", + "type": "object", + "nullable": false + }, + "user": { + "description": "A unique identifier representing your end-user, which can help monitoring and detecting abuse", + "type": "string", + "nullable": false + }, + "n": { + "description": "How many completions to generate for each prompt. Minimum of 1 and maximum of 128 allowed.\nNote: Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for max_tokens and stop.", + "type": "integer", + "default": 1, + "example": 1, + "nullable": true + }, + "stream": { + "description": "Whether to stream back partial progress. If set, tokens will be sent as data-only server-sent events as they become available, with the stream terminated by a data: [DONE] message.", + "type": "boolean", + "nullable": true, + "default": false + }, + "logprobs": { + "description": "Include the log probabilities on the logprobs most likely tokens, as well the chosen tokens. For example, if logprobs is 5, the API will return a list of the 5 most likely tokens. The API will always return the logprob of the sampled token, so there may be up to logprobs+1 elements in the response.\nMinimum of 0 and maximum of 5 allowed.", + "type": "integer", + "default": null, + "nullable": true + }, + "suffix": { + "type": "string", + "nullable": true, + "description": "The suffix that comes after a completion of inserted text." + }, + "echo": { + "description": "Echo back the prompt in addition to the completion", + "type": "boolean", + "default": false, + "nullable": true + }, + "stop": { + "description": "Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence.", + "oneOf": [ + { + "type": "string", + "default": "<|endoftext|>", + "example": "\n", + "nullable": true + }, + { + "type": "array", + "items": { + "type": "string", + "example": "\n", + "nullable": false + }, + "description": "Array minimum size of 1 and maximum of 4" + } + ] + }, + "completion_config": { + "type": "string", + "nullable": true + }, + "presence_penalty": { + "description": "Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics.", + "type": "number", + "default": 0 + }, + "frequency_penalty": { + "description": "Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim.", + "type": "number", + "default": 0 + }, + "best_of": { + "description": "Generates best_of completions server-side and returns the \"best\" (the one with the highest log probability per token). Results cannot be streamed.\nWhen used with n, best_of controls the number of candidate completions and n specifies how many to return - best_of must be greater than n.\nNote: Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for max_tokens and stop. Has maximum value of 128.", + "type": "integer" + } + } + }, + "example": { + "prompt": "Negate the following sentence.The price for bubblegum increased on thursday.\n\n Negated Sentence:", + "max_tokens": 50 + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "object": { + "type": "string" + }, + "created": { + "type": "integer" + }, + "model": { + "type": "string" + }, + "prompt_filter_results": { + "$ref": "#/components/schemas/promptFilterResults" + }, + "choices": { + "type": "array", + "items": { + "type": "object", + "properties": { + "text": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "logprobs": { + "type": "object", + "properties": { + "tokens": { + "type": "array", + "items": { + "type": "string" + } + }, + "token_logprobs": { + "type": "array", + "items": { + "type": "number" + } + }, + "top_logprobs": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "type": "number" + } + } + }, + "text_offset": { + "type": "array", + "items": { + "type": "integer" + } + } + }, + "nullable": true + }, + "finish_reason": { + "type": "string" + }, + "content_filter_results": { + "$ref": "#/components/schemas/contentFilterChoiceResults" + } + } + } + }, + "usage": { + "type": "object", + "properties": { + "completion_tokens": { + "type": "number", + "format": "int32" + }, + "prompt_tokens": { + "type": "number", + "format": "int32" + }, + "total_tokens": { + "type": "number", + "format": "int32" + } + }, + "required": [ + "prompt_tokens", + "total_tokens", + "completion_tokens" + ] + } + }, + "required": [ + "id", + "object", + "created", + "model", + "choices" + ] + }, + "example": { + "model": "davinci", + "object": "text_completion", + "id": "cmpl-4509KAos68kxOqpE2uYGw81j6m7uo", + "created": 1637097562, + "choices": [ + { + "index": 0, + "text": "The price for bubblegum decreased on thursday.", + "logprobs": null, + "finish_reason": "stop" + } + ] + } + } + }, + "headers": { + "apim-request-id": { + "description": "Request ID for troubleshooting purposes", + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/errorResponse" + } + } + }, + "headers": { + "apim-request-id": { + "description": "Request ID for troubleshooting purposes", + "schema": { + "type": "string" + } + } + } + } + }, + "x-ms-examples": { + "Create a completion.": { + "$ref": "./examples/completions.json" + } + } + } + }, + "/deployments/{deployment-id}/embeddings": { + "post": { + "summary": "Get a vector representation of a given input that can be easily consumed by machine learning models and algorithms.", + "operationId": "embeddings_create", + "parameters": [ + { + "in": "path", + "name": "deployment-id", + "required": true, + "schema": { + "type": "string", + "example": "ada-search-index-v1" + }, + "description": "The deployment id of the model which was deployed." + }, + { + "in": "query", + "name": "api-version", + "required": true, + "schema": { + "type": "string", + "example": "2024-06-01", + "description": "api version" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "additionalProperties": true, + "properties": { + "input": { + "description": "Input text to get embeddings for, encoded as a string. To get embeddings for multiple inputs in a single request, pass an array of strings. Each input must not exceed 2048 tokens in length.\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space, as we have observed inferior results when newlines are present.", + "oneOf": [ + { + "type": "string", + "default": "", + "example": "This is a test.", + "nullable": true + }, + { + "type": "array", + "minItems": 1, + "maxItems": 2048, + "items": { + "type": "string", + "minLength": 1, + "example": "This is a test.", + "nullable": false + } + } + ] + }, + "user": { + "description": "A unique identifier representing your end-user, which can help monitoring and detecting abuse.", + "type": "string", + "nullable": false + }, + "input_type": { + "description": "input type of embedding search to use", + "type": "string", + "example": "query" + }, + "encoding_format": { + "description": "The format to return the embeddings in. Can be either `float` or `base64`. Defaults to `float`.", + "type": "string", + "example": "float", + "nullable": true + }, + "dimensions": { + "description": "The number of dimensions the resulting output embeddings should have. Only supported in `text-embedding-3` and later models.", + "type": "integer", + "example": 1, + "nullable": true + } + }, + "required": [ + "input" + ] + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "object": { + "type": "string" + }, + "model": { + "type": "string" + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer" + }, + "object": { + "type": "string" + }, + "embedding": { + "type": "array", + "items": { + "type": "number" + } + } + }, + "required": [ + "index", + "object", + "embedding" + ] + } + }, + "usage": { + "type": "object", + "properties": { + "prompt_tokens": { + "type": "integer" + }, + "total_tokens": { + "type": "integer" + } + }, + "required": [ + "prompt_tokens", + "total_tokens" + ] + } + }, + "required": [ + "object", + "model", + "data", + "usage" + ] + } + } + } + } + }, + "x-ms-examples": { + "Create a embeddings.": { + "$ref": "./examples/embeddings.json" + } + } + } + }, + "/deployments/{deployment-id}/chat/completions": { + "post": { + "summary": "Creates a completion for the chat message", + "operationId": "ChatCompletions_Create", + "parameters": [ + { + "in": "path", + "name": "deployment-id", + "required": true, + "schema": { + "type": "string", + "description": "Deployment id of the model which was deployed." + } + }, + { + "in": "query", + "name": "api-version", + "required": true, + "schema": { + "type": "string", + "example": "2024-06-01", + "description": "api version" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/createChatCompletionRequest" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/createChatCompletionResponse" + } + } + }, + "headers": { + "apim-request-id": { + "description": "Request ID for troubleshooting purposes", + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/errorResponse" + } + } + }, + "headers": { + "apim-request-id": { + "description": "Request ID for troubleshooting purposes", + "schema": { + "type": "string" + } + } + } + } + }, + "x-ms-examples": { + "Create a chat completion.": { + "$ref": "./examples/chat_completions.json" + }, + "Creates a completion based on Azure Search data and system-assigned managed identity.": { + "$ref": "./examples/chat_completions_azure_search_minimum.json" + }, + "Creates a completion based on Azure Search vector data, previous assistant message and user-assigned managed identity.": { + "$ref": "./examples/chat_completions_azure_search_advanced.json" + }, + "Creates a completion for the provided Azure Cosmos DB.": { + "$ref": "./examples/chat_completions_cosmos_db.json" + } + } + } + }, + "/deployments/{deployment-id}/audio/transcriptions": { + "post": { + "summary": "Transcribes audio into the input language.", + "operationId": "Transcriptions_Create", + "parameters": [ + { + "in": "path", + "name": "deployment-id", + "required": true, + "schema": { + "type": "string", + "example": "whisper", + "description": "Deployment id of the whisper model." + } + }, + { + "in": "query", + "name": "api-version", + "required": true, + "schema": { + "type": "string", + "example": "2024-06-01", + "description": "api version" + } + } + ], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "$ref": "#/components/schemas/createTranscriptionRequest" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/audioResponse" + }, + { + "$ref": "#/components/schemas/audioVerboseResponse" + } + ] + } + }, + "text/plain": { + "schema": { + "type": "string", + "description": "Transcribed text in the output format (when response_format was one of text, vtt or srt)." + } + } + } + } + }, + "x-ms-examples": { + "Create an audio transcription with json response format.": { + "$ref": "./examples/audio_transcription_object.json" + }, + "Create an audio transcription with text response format.": { + "$ref": "./examples/audio_transcription_text.json" + } + } + } + }, + "/deployments/{deployment-id}/audio/translations": { + "post": { + "summary": "Transcribes and translates input audio into English text.", + "operationId": "Translations_Create", + "parameters": [ + { + "in": "path", + "name": "deployment-id", + "required": true, + "schema": { + "type": "string", + "example": "whisper", + "description": "Deployment id of the whisper model which was deployed." + } + }, + { + "in": "query", + "name": "api-version", + "required": true, + "schema": { + "type": "string", + "example": "2024-06-01", + "description": "api version" + } + } + ], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "$ref": "#/components/schemas/createTranslationRequest" + } + } + } + }, + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/audioResponse" + }, + { + "$ref": "#/components/schemas/audioVerboseResponse" + } + ] + } + }, + "text/plain": { + "schema": { + "type": "string", + "description": "Transcribed text in the output format (when response_format was one of text, vtt or srt)." + } + } + } + } + }, + "x-ms-examples": { + "Create an audio translation with json response format.": { + "$ref": "./examples/audio_translation_object.json" + }, + "Create an audio translation with text response format.": { + "$ref": "./examples/audio_translation_text.json" + } + } + } + }, + "/deployments/{deployment-id}/images/generations": { + "post": { + "summary": "Generates a batch of images from a text caption on a given DALLE model deployment", + "operationId": "ImageGenerations_Create", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/imageGenerationsRequest" + } + } + } + }, + "parameters": [ + { + "in": "path", + "name": "deployment-id", + "required": true, + "schema": { + "type": "string", + "example": "dalle-deployment", + "description": "Deployment id of the dalle model which was deployed." + } + }, + { + "in": "query", + "name": "api-version", + "required": true, + "schema": { + "type": "string", + "example": "2024-06-01", + "description": "api version" + } + } + ], + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/generateImagesResponse" + } + } + } + }, + "default": { + "description": "An error occurred.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/dalleErrorResponse" + } + } + } + } + }, + "x-ms-examples": { + "Create an image.": { + "$ref": "./examples/image_generation.json" + } + } + } + } + }, + "components": { + "schemas": { + "errorResponse": { + "type": "object", + "properties": { + "error": { + "$ref": "#/components/schemas/error" + } + } + }, + "errorBase": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "error": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/errorBase" + } + ], + "properties": { + "param": { + "type": "string" + }, + "type": { + "type": "string" + }, + "inner_error": { + "$ref": "#/components/schemas/innerError" + } + } + }, + "innerError": { + "description": "Inner error with additional details.", + "type": "object", + "properties": { + "code": { + "$ref": "#/components/schemas/innerErrorCode" + }, + "content_filter_results": { + "$ref": "#/components/schemas/contentFilterPromptResults" + } + } + }, + "innerErrorCode": { + "description": "Error codes for the inner error object.", + "enum": [ + "ResponsibleAIPolicyViolation" + ], + "type": "string", + "x-ms-enum": { + "name": "InnerErrorCode", + "modelAsString": true, + "values": [ + { + "value": "ResponsibleAIPolicyViolation", + "description": "The prompt violated one of more content filter rules." + } + ] + } + }, + "dalleErrorResponse": { + "type": "object", + "properties": { + "error": { + "$ref": "#/components/schemas/dalleError" + } + } + }, + "dalleError": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/errorBase" + } + ], + "properties": { + "param": { + "type": "string" + }, + "type": { + "type": "string" + }, + "inner_error": { + "$ref": "#/components/schemas/dalleInnerError" + } + } + }, + "dalleInnerError": { + "description": "Inner error with additional details.", + "type": "object", + "properties": { + "code": { + "$ref": "#/components/schemas/innerErrorCode" + }, + "content_filter_results": { + "$ref": "#/components/schemas/dalleFilterResults" + }, + "revised_prompt": { + "type": "string", + "description": "The prompt that was used to generate the image, if there was any revision to the prompt." + } + } + }, + "contentFilterResultBase": { + "type": "object", + "properties": { + "filtered": { + "type": "boolean" + } + }, + "required": [ + "filtered" + ] + }, + "contentFilterSeverityResult": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/contentFilterResultBase" + }, + { + "properties": { + "severity": { + "type": "string", + "enum": [ + "safe", + "low", + "medium", + "high" + ], + "x-ms-enum": { + "name": "ContentFilterSeverity", + "modelAsString": true, + "values": [ + { + "value": "safe", + "description": "General content or related content in generic or non-harmful contexts." + }, + { + "value": "low", + "description": "Harmful content at a low intensity and risk level." + }, + { + "value": "medium", + "description": "Harmful content at a medium intensity and risk level." + }, + { + "value": "high", + "description": "Harmful content at a high intensity and risk level." + } + ] + } + } + } + } + ], + "required": [ + "severity", + "filtered" + ] + }, + "contentFilterDetectedResult": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/contentFilterResultBase" + }, + { + "properties": { + "detected": { + "type": "boolean" + } + } + } + ], + "required": [ + "detected", + "filtered" + ] + }, + "contentFilterDetectedWithCitationResult": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/contentFilterDetectedResult" + }, + { + "properties": { + "citation": { + "type": "object", + "properties": { + "URL": { + "type": "string" + }, + "license": { + "type": "string" + } + } + } + } + } + ], + "required": [ + "detected", + "filtered" + ] + }, + "contentFilterResultsBase": { + "type": "object", + "description": "Information about the content filtering results.", + "properties": { + "sexual": { + "$ref": "#/components/schemas/contentFilterSeverityResult" + }, + "violence": { + "$ref": "#/components/schemas/contentFilterSeverityResult" + }, + "hate": { + "$ref": "#/components/schemas/contentFilterSeverityResult" + }, + "self_harm": { + "$ref": "#/components/schemas/contentFilterSeverityResult" + }, + "profanity": { + "$ref": "#/components/schemas/contentFilterDetectedResult" + }, + "error": { + "$ref": "#/components/schemas/errorBase" + } + } + }, + "contentFilterPromptResults": { + "type": "object", + "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about jailbreak content and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.", + "allOf": [ + { + "$ref": "#/components/schemas/contentFilterResultsBase" + }, + { + "properties": { + "jailbreak": { + "$ref": "#/components/schemas/contentFilterDetectedResult" + } + } + } + ] + }, + "contentFilterChoiceResults": { + "type": "object", + "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about third party text and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.", + "allOf": [ + { + "$ref": "#/components/schemas/contentFilterResultsBase" + }, + { + "properties": { + "protected_material_text": { + "$ref": "#/components/schemas/contentFilterDetectedResult" + } + } + }, + { + "properties": { + "protected_material_code": { + "$ref": "#/components/schemas/contentFilterDetectedWithCitationResult" + } + } + } + ] + }, + "promptFilterResult": { + "type": "object", + "description": "Content filtering results for a single prompt in the request.", + "properties": { + "prompt_index": { + "type": "integer" + }, + "content_filter_results": { + "$ref": "#/components/schemas/contentFilterPromptResults" + } + } + }, + "promptFilterResults": { + "type": "array", + "description": "Content filtering results for zero or more prompts in the request. In a streaming request, results for different prompts may arrive at different times or in different orders.", + "items": { + "$ref": "#/components/schemas/promptFilterResult" + } + }, + "dalleContentFilterResults": { + "type": "object", + "description": "Information about the content filtering results.", + "properties": { + "sexual": { + "$ref": "#/components/schemas/contentFilterSeverityResult" + }, + "violence": { + "$ref": "#/components/schemas/contentFilterSeverityResult" + }, + "hate": { + "$ref": "#/components/schemas/contentFilterSeverityResult" + }, + "self_harm": { + "$ref": "#/components/schemas/contentFilterSeverityResult" + } + } + }, + "dalleFilterResults": { + "type": "object", + "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about jailbreak content and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.", + "allOf": [ + { + "$ref": "#/components/schemas/dalleContentFilterResults" + }, + { + "properties": { + "profanity": { + "$ref": "#/components/schemas/contentFilterDetectedResult" + }, + "jailbreak": { + "$ref": "#/components/schemas/contentFilterDetectedResult" + } + } + } + ] + }, + "chatCompletionsRequestCommon": { + "type": "object", + "properties": { + "temperature": { + "description": "What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nWe generally recommend altering this or `top_p` but not both.", + "type": "number", + "minimum": 0, + "maximum": 2, + "default": 1, + "example": 1, + "nullable": true + }, + "top_p": { + "description": "An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.\nWe generally recommend altering this or `temperature` but not both.", + "type": "number", + "minimum": 0, + "maximum": 1, + "default": 1, + "example": 1, + "nullable": true + }, + "stream": { + "description": "If set, partial message deltas will be sent, like in ChatGPT. Tokens will be sent as data-only server-sent events as they become available, with the stream terminated by a `data: [DONE]` message.", + "type": "boolean", + "nullable": true, + "default": false + }, + "stop": { + "description": "Up to 4 sequences where the API will stop generating further tokens.", + "oneOf": [ + { + "type": "string", + "nullable": true + }, + { + "type": "array", + "items": { + "type": "string", + "nullable": false + }, + "minItems": 1, + "maxItems": 4, + "description": "Array minimum size of 1 and maximum of 4" + } + ], + "default": null + }, + "max_tokens": { + "description": "The maximum number of tokens allowed for the generated answer. By default, the number of tokens the model can return will be (4096 - prompt tokens).", + "type": "integer", + "default": 4096 + }, + "presence_penalty": { + "description": "Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics.", + "type": "number", + "default": 0, + "minimum": -2, + "maximum": 2 + }, + "frequency_penalty": { + "description": "Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim.", + "type": "number", + "default": 0, + "minimum": -2, + "maximum": 2 + }, + "logit_bias": { + "description": "Modify the likelihood of specified tokens appearing in the completion. Accepts a json object that maps tokens (specified by their token ID in the tokenizer) to an associated bias value from -100 to 100. Mathematically, the bias is added to the logits generated by the model prior to sampling. The exact effect will vary per model, but values between -1 and 1 should decrease or increase likelihood of selection; values like -100 or 100 should result in a ban or exclusive selection of the relevant token.", + "type": "object", + "nullable": true + }, + "user": { + "description": "A unique identifier representing your end-user, which can help Azure OpenAI to monitor and detect abuse.", + "type": "string", + "example": "user-1234", + "nullable": false + } + } + }, + "createChatCompletionRequest": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionsRequestCommon" + }, + { + "properties": { + "messages": { + "description": "A list of messages comprising the conversation so far. [Example Python code](https://github.com/openai/openai-cookbook/blob/main/examples/How_to_format_inputs_to_ChatGPT_models.ipynb).", + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/components/schemas/chatCompletionRequestMessage" + } + }, + "data_sources": { + "type": "array", + "description": " The configuration entries for Azure OpenAI chat extensions that use them.\n This additional specification is only compatible with Azure OpenAI.", + "items": { + "$ref": "#/components/schemas/azureChatExtensionConfiguration" + } + }, + "n": { + "type": "integer", + "minimum": 1, + "maximum": 128, + "default": 1, + "example": 1, + "nullable": true, + "description": "How many chat completion choices to generate for each input message." + }, + "seed": { + "type": "integer", + "minimum": -9223372036854775808, + "maximum": 9223372036854775807, + "default": 0, + "example": 1, + "nullable": true, + "description": "If specified, our system will make a best effort to sample deterministically, such that repeated requests with the same `seed` and parameters should return the same result.Determinism is not guaranteed, and you should refer to the `system_fingerprint` response parameter to monitor changes in the backend." + }, + "logprobs": { + "description": "Whether to return log probabilities of the output tokens or not. If true, returns the log probabilities of each output token returned in the `content` of `message`. This option is currently not available on the `gpt-4-vision-preview` model.", + "type": "boolean", + "default": false, + "nullable": true + }, + "top_logprobs": { + "description": "An integer between 0 and 5 specifying the number of most likely tokens to return at each token position, each with an associated log probability. `logprobs` must be set to `true` if this parameter is used.", + "type": "integer", + "minimum": 0, + "maximum": 5, + "nullable": true + }, + "response_format": { + "type": "object", + "description": "An object specifying the format that the model must output. Used to enable JSON mode.", + "properties": { + "type": { + "$ref": "#/components/schemas/chatCompletionResponseFormat" + } + } + }, + "tools": { + "description": "A list of tools the model may call. Currently, only functions are supported as a tool. Use this to provide a list of functions the model may generate JSON inputs for.", + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/components/schemas/chatCompletionTool" + } + }, + "tool_choice": { + "$ref": "#/components/schemas/chatCompletionToolChoiceOption" + }, + "functions": { + "description": "Deprecated in favor of `tools`. A list of functions the model may generate JSON inputs for.", + "type": "array", + "minItems": 1, + "maxItems": 128, + "items": { + "$ref": "#/components/schemas/chatCompletionFunction" + } + }, + "function_call": { + "description": "Deprecated in favor of `tool_choice`. Controls how the model responds to function calls. \"none\" means the model does not call a function, and responds to the end-user. \"auto\" means the model can pick between an end-user or calling a function. Specifying a particular function via `{\"name\":\\ \"my_function\"}` forces the model to call that function. \"none\" is the default when no functions are present. \"auto\" is the default if functions are present.", + "oneOf": [ + { + "type": "string", + "enum": [ + "none", + "auto" + ], + "description": "`none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function." + }, + { + "type": "object", + "description": "Specifying a particular function via `{\"name\": \"my_function\"}` forces the model to call that function.", + "properties": { + "name": { + "type": "string", + "description": "The name of the function to call." + } + }, + "required": [ + "name" + ] + } + ] + } + } + } + ], + "required": [ + "messages" + ] + }, + "chatCompletionResponseFormat": { + "type": "string", + "enum": [ + "text", + "json_object" + ], + "default": "text", + "example": "json_object", + "nullable": true, + "description": "Setting to `json_object` enables JSON mode. This guarantees that the message the model generates is valid JSON.", + "x-ms-enum": { + "name": "ChatCompletionResponseFormat", + "modelAsString": true, + "values": [ + { + "value": "text", + "description": "Response format is a plain text string." + }, + { + "value": "json_object", + "description": "Response format is a JSON object." + } + ] + } + }, + "chatCompletionFunction": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64." + }, + "description": { + "type": "string", + "description": "The description of what the function does." + }, + "parameters": { + "$ref": "#/components/schemas/chatCompletionFunctionParameters" + } + }, + "required": [ + "name" + ] + }, + "chatCompletionFunctionParameters": { + "type": "object", + "description": "The parameters the functions accepts, described as a JSON Schema object. See the [guide](/docs/guides/gpt/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format.", + "additionalProperties": true + }, + "chatCompletionRequestMessage": { + "type": "object", + "properties": { + "role": { + "$ref": "#/components/schemas/chatCompletionRequestMessageRole" + } + }, + "discriminator": { + "propertyName": "role", + "mapping": { + "system": "#/components/schemas/chatCompletionRequestMessageSystem", + "user": "#/components/schemas/chatCompletionRequestMessageUser", + "assistant": "#/components/schemas/chatCompletionRequestMessageAssistant", + "tool": "#/components/schemas/chatCompletionRequestMessageTool", + "function": "#/components/schemas/chatCompletionRequestMessageFunction" + } + }, + "required": [ + "role" + ] + }, + "chatCompletionRequestMessageRole": { + "type": "string", + "enum": [ + "system", + "user", + "assistant", + "tool", + "function" + ], + "description": "The role of the messages author.", + "x-ms-enum": { + "name": "ChatCompletionRequestMessageRole", + "modelAsString": true, + "values": [ + { + "value": "system", + "description": "The message author role is system." + }, + { + "value": "user", + "description": "The message author role is user." + }, + { + "value": "assistant", + "description": "The message author role is assistant." + }, + { + "value": "tool", + "description": "The message author role is tool." + }, + { + "value": "function", + "description": "Deprecated. The message author role is function." + } + ] + } + }, + "chatCompletionRequestMessageSystem": { + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionRequestMessage" + }, + { + "type": "object", + "properties": { + "content": { + "type": "string", + "description": "The contents of the message.", + "nullable": true + } + } + } + ], + "required": [ + "content" + ] + }, + "chatCompletionRequestMessageUser": { + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionRequestMessage" + }, + { + "type": "object", + "properties": { + "content": { + "oneOf": [ + { + "type": "string", + "description": "The contents of the message." + }, + { + "type": "array", + "description": "An array of content parts with a defined type, each can be of type `text` or `image_url` when passing in images. You can pass multiple images by adding multiple `image_url` content parts. Image input is only supported when using the `gpt-4-visual-preview` model.", + "minimum": 1, + "items": { + "$ref": "#/components/schemas/chatCompletionRequestMessageContentPart" + } + } + ], + "nullable": true + } + } + } + ], + "required": [ + "content" + ] + }, + "chatCompletionRequestMessageContentPart": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/chatCompletionRequestMessageContentPartType" + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "text": "#/components/schemas/chatCompletionRequestMessageContentPartText", + "image_url": "#/components/schemas/chatCompletionRequestMessageContentPartImage" + } + }, + "required": [ + "type" + ] + }, + "chatCompletionRequestMessageContentPartType": { + "type": "string", + "enum": [ + "text", + "image_url" + ], + "description": "The type of the content part.", + "x-ms-enum": { + "name": "ChatCompletionRequestMessageContentPartType", + "modelAsString": true, + "values": [ + { + "value": "text", + "description": "The content part type is text." + }, + { + "value": "image_url", + "description": "The content part type is image_url." + } + ] + } + }, + "chatCompletionRequestMessageContentPartText": { + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionRequestMessageContentPart" + }, + { + "type": "object", + "properties": { + "text": { + "type": "string", + "description": "The text content." + } + } + } + ], + "required": [ + "text" + ] + }, + "chatCompletionRequestMessageContentPartImage": { + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionRequestMessageContentPart" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string", + "description": "Either a URL of the image or the base64 encoded image data.", + "format": "uri" + }, + "detail": { + "$ref": "#/components/schemas/imageDetailLevel" + } + } + } + ], + "required": [ + "url" + ] + }, + "imageDetailLevel": { + "type": "string", + "description": "Specifies the detail level of the image.", + "enum": [ + "auto", + "low", + "high" + ], + "default": "auto", + "x-ms-enum": { + "name": "ImageDetailLevel", + "modelAsString": true, + "values": [ + { + "value": "auto", + "description": "The image detail level is auto." + }, + { + "value": "low", + "description": "The image detail level is low." + }, + { + "value": "high", + "description": "The image detail level is high." + } + ] + } + }, + "chatCompletionRequestMessageAssistant": { + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionRequestMessage" + }, + { + "type": "object", + "properties": { + "content": { + "type": "string", + "description": "The contents of the message.", + "nullable": true + }, + "tool_calls": { + "type": "array", + "description": "The tool calls generated by the model, such as function calls.", + "items": { + "$ref": "#/components/schemas/chatCompletionMessageToolCall" + } + }, + "context": { + "$ref": "#/components/schemas/azureChatExtensionsMessageContext" + } + } + } + ], + "required": [ + "content" + ] + }, + "azureChatExtensionConfiguration": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/azureChatExtensionType" + } + }, + "description": " A representation of configuration data for a single Azure OpenAI chat extension. This will be used by a chat\n completions request that should use Azure OpenAI chat extensions to augment the response behavior.\n The use of this configuration is compatible only with Azure OpenAI.", + "discriminator": { + "propertyName": "type", + "mapping": { + "azure_search": "#/components/schemas/azureSearchChatExtensionConfiguration", + "azure_cosmos_db": "#/components/schemas/azureCosmosDBChatExtensionConfiguration" + } + } + }, + "azureChatExtensionType": { + "type": "string", + "description": " A representation of configuration data for a single Azure OpenAI chat extension. This will be used by a chat\n completions request that should use Azure OpenAI chat extensions to augment the response behavior.\n The use of this configuration is compatible only with Azure OpenAI.", + "enum": [ + "azure_search", + "azure_cosmos_db" + ], + "x-ms-enum": { + "name": "AzureChatExtensionType", + "modelAsString": true, + "values": [ + { + "name": "azureSearch", + "value": "azure_search", + "description": "Represents the use of Azure Search as an Azure OpenAI chat extension." + }, + { + "name": "azureCosmosDB", + "value": "azure_cosmos_db", + "description": "Represents the use of Azure Cosmos DB as an Azure OpenAI chat extension." + } + ] + } + }, + "azureSearchChatExtensionConfiguration": { + "required": [ + "parameters" + ], + "description": "A specific representation of configurable options for Azure Search when using it as an Azure OpenAI chat\nextension.", + "allOf": [ + { + "$ref": "#/components/schemas/azureChatExtensionConfiguration" + }, + { + "properties": { + "parameters": { + "$ref": "#/components/schemas/azureSearchChatExtensionParameters" + } + } + } + ], + "x-ms-discriminator-value": "azure_search" + }, + "azureSearchChatExtensionParameters": { + "required": [ + "authentication", + "endpoint", + "index_name" + ], + "type": "object", + "properties": { + "authentication": { + "oneOf": [ + { + "$ref": "#/components/schemas/onYourDataApiKeyAuthenticationOptions" + }, + { + "$ref": "#/components/schemas/onYourDataSystemAssignedManagedIdentityAuthenticationOptions" + }, + { + "$ref": "#/components/schemas/onYourDataUserAssignedManagedIdentityAuthenticationOptions" + } + ] + }, + "top_n_documents": { + "type": "integer", + "description": "The configured top number of documents to feature for the configured query.", + "format": "int32" + }, + "in_scope": { + "type": "boolean", + "description": "Whether queries should be restricted to use of indexed data." + }, + "strictness": { + "maximum": 5, + "minimum": 1, + "type": "integer", + "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.", + "format": "int32" + }, + "role_information": { + "type": "string", + "description": "Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit." + }, + "endpoint": { + "type": "string", + "description": "The absolute endpoint path for the Azure Search resource to use.", + "format": "uri" + }, + "index_name": { + "type": "string", + "description": "The name of the index to use as available in the referenced Azure Search resource." + }, + "fields_mapping": { + "$ref": "#/components/schemas/azureSearchIndexFieldMappingOptions" + }, + "query_type": { + "$ref": "#/components/schemas/azureSearchQueryType" + }, + "semantic_configuration": { + "type": "string", + "description": "The additional semantic configuration for the query." + }, + "filter": { + "type": "string", + "description": "Search filter." + }, + "embedding_dependency": { + "oneOf": [ + { + "$ref": "#/components/schemas/onYourDataEndpointVectorizationSource" + }, + { + "$ref": "#/components/schemas/onYourDataDeploymentNameVectorizationSource" + } + ] + } + }, + "description": "Parameters for Azure Search when used as an Azure OpenAI chat extension." + }, + "azureSearchIndexFieldMappingOptions": { + "type": "object", + "properties": { + "title_field": { + "type": "string", + "description": "The name of the index field to use as a title." + }, + "url_field": { + "type": "string", + "description": "The name of the index field to use as a URL." + }, + "filepath_field": { + "type": "string", + "description": "The name of the index field to use as a filepath." + }, + "content_fields": { + "type": "array", + "description": "The names of index fields that should be treated as content.", + "items": { + "type": "string" + } + }, + "content_fields_separator": { + "type": "string", + "description": "The separator pattern that content fields should use." + }, + "vector_fields": { + "type": "array", + "description": "The names of fields that represent vector data.", + "items": { + "type": "string" + } + } + }, + "description": "Optional settings to control how fields are processed when using a configured Azure Search resource." + }, + "azureSearchQueryType": { + "type": "string", + "description": "The type of Azure Search retrieval query that should be executed when using it as an Azure OpenAI chat extension.", + "enum": [ + "simple", + "semantic", + "vector", + "vector_simple_hybrid", + "vector_semantic_hybrid" + ], + "x-ms-enum": { + "name": "azureSearchQueryType", + "modelAsString": true, + "values": [ + { + "name": "simple", + "value": "simple", + "description": "Represents the default, simple query parser." + }, + { + "name": "semantic", + "value": "semantic", + "description": "Represents the semantic query parser for advanced semantic modeling." + }, + { + "name": "vector", + "value": "vector", + "description": "Represents vector search over computed data." + }, + { + "name": "vectorSimpleHybrid", + "value": "vector_simple_hybrid", + "description": "Represents a combination of the simple query strategy with vector data." + }, + { + "name": "vectorSemanticHybrid", + "value": "vector_semantic_hybrid", + "description": "Represents a combination of semantic search and vector data querying." + } + ] + } + }, + "azureCosmosDBChatExtensionConfiguration": { + "required": [ + "parameters" + ], + "description": "A specific representation of configurable options for Azure Cosmos DB when using it as an Azure OpenAI chat\nextension.", + "allOf": [ + { + "$ref": "#/components/schemas/azureChatExtensionConfiguration" + }, + { + "properties": { + "parameters": { + "$ref": "#/components/schemas/azureCosmosDBChatExtensionParameters" + } + } + } + ], + "x-ms-discriminator-value": "azure_cosmos_db" + }, + "azureCosmosDBChatExtensionParameters": { + "required": [ + "authentication", + "container_name", + "database_name", + "embedding_dependency", + "fields_mapping", + "index_name" + ], + "type": "object", + "properties": { + "authentication": { + "$ref": "#/components/schemas/onYourDataConnectionStringAuthenticationOptions" + }, + "top_n_documents": { + "type": "integer", + "description": "The configured top number of documents to feature for the configured query.", + "format": "int32" + }, + "in_scope": { + "type": "boolean", + "description": "Whether queries should be restricted to use of indexed data." + }, + "strictness": { + "maximum": 5, + "minimum": 1, + "type": "integer", + "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.", + "format": "int32" + }, + "role_information": { + "type": "string", + "description": "Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit." + }, + "database_name": { + "type": "string", + "description": "The MongoDB vCore database name to use with Azure Cosmos DB." + }, + "container_name": { + "type": "string", + "description": "The name of the Azure Cosmos DB resource container." + }, + "index_name": { + "type": "string", + "description": "The MongoDB vCore index name to use with Azure Cosmos DB." + }, + "fields_mapping": { + "$ref": "#/components/schemas/azureCosmosDBFieldMappingOptions" + }, + "embedding_dependency": { + "oneOf": [ + { + "$ref": "#/components/schemas/onYourDataEndpointVectorizationSource" + }, + { + "$ref": "#/components/schemas/onYourDataDeploymentNameVectorizationSource" + } + ] + } + }, + "description": "Parameters to use when configuring Azure OpenAI On Your Data chat extensions when using Azure Cosmos DB for\nMongoDB vCore." + }, + "azureCosmosDBFieldMappingOptions": { + "required": [ + "content_fields", + "vector_fields" + ], + "type": "object", + "properties": { + "title_field": { + "type": "string", + "description": "The name of the index field to use as a title." + }, + "url_field": { + "type": "string", + "description": "The name of the index field to use as a URL." + }, + "filepath_field": { + "type": "string", + "description": "The name of the index field to use as a filepath." + }, + "content_fields": { + "type": "array", + "description": "The names of index fields that should be treated as content.", + "items": { + "type": "string" + } + }, + "content_fields_separator": { + "type": "string", + "description": "The separator pattern that content fields should use." + }, + "vector_fields": { + "type": "array", + "description": "The names of fields that represent vector data.", + "items": { + "type": "string" + } + } + }, + "description": "Optional settings to control how fields are processed when using a configured Azure Cosmos DB resource." + }, + "onYourDataAuthenticationOptions": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/onYourDataAuthenticationType" + } + }, + "description": "The authentication options for Azure OpenAI On Your Data.", + "discriminator": { + "propertyName": "type", + "mapping": { + "api_key": "#/components/schemas/onYourDataApiKeyAuthenticationOptions", + "connection_string": "#/components/schemas/onYourDataConnectionStringAuthenticationOptions", + "system_assigned_managed_identity": "#/components/schemas/onYourDataSystemAssignedManagedIdentityAuthenticationOptions", + "user_assigned_managed_identity": "#/components/schemas/onYourDataUserAssignedManagedIdentityAuthenticationOptions" + } + } + }, + "onYourDataAuthenticationType": { + "type": "string", + "description": "The authentication types supported with Azure OpenAI On Your Data.", + "enum": [ + "api_key", + "connection_string", + "system_assigned_managed_identity", + "user_assigned_managed_identity" + ], + "x-ms-enum": { + "name": "OnYourDataAuthenticationType", + "modelAsString": true, + "values": [ + { + "name": "apiKey", + "value": "api_key", + "description": "Authentication via API key." + }, + { + "name": "connectionString", + "value": "connection_string", + "description": "Authentication via connection string." + }, + { + "name": "systemAssignedManagedIdentity", + "value": "system_assigned_managed_identity", + "description": "Authentication via system-assigned managed identity." + }, + { + "name": "userAssignedManagedIdentity", + "value": "user_assigned_managed_identity", + "description": "Authentication via user-assigned managed identity." + } + ] + } + }, + "onYourDataApiKeyAuthenticationOptions": { + "required": [ + "key" + ], + "description": "The authentication options for Azure OpenAI On Your Data when using an API key.", + "allOf": [ + { + "$ref": "#/components/schemas/onYourDataAuthenticationOptions" + }, + { + "properties": { + "key": { + "type": "string", + "description": "The API key to use for authentication." + } + } + } + ], + "x-ms-discriminator-value": "api_key" + }, + "onYourDataConnectionStringAuthenticationOptions": { + "required": [ + "connection_string" + ], + "description": "The authentication options for Azure OpenAI On Your Data when using a connection string.", + "allOf": [ + { + "$ref": "#/components/schemas/onYourDataAuthenticationOptions" + }, + { + "properties": { + "connection_string": { + "type": "string", + "description": "The connection string to use for authentication." + } + } + } + ], + "x-ms-discriminator-value": "connection_string" + }, + "onYourDataSystemAssignedManagedIdentityAuthenticationOptions": { + "description": "The authentication options for Azure OpenAI On Your Data when using a system-assigned managed identity.", + "allOf": [ + { + "$ref": "#/components/schemas/onYourDataAuthenticationOptions" + } + ], + "x-ms-discriminator-value": "system_assigned_managed_identity" + }, + "onYourDataUserAssignedManagedIdentityAuthenticationOptions": { + "required": [ + "managed_identity_resource_id" + ], + "description": "The authentication options for Azure OpenAI On Your Data when using a user-assigned managed identity.", + "allOf": [ + { + "$ref": "#/components/schemas/onYourDataAuthenticationOptions" + }, + { + "properties": { + "managed_identity_resource_id": { + "type": "string", + "description": "The resource ID of the user-assigned managed identity to use for authentication." + } + } + } + ], + "x-ms-discriminator-value": "user_assigned_managed_identity" + }, + "onYourDataVectorizationSource": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/onYourDataVectorizationSourceType" + } + }, + "description": "An abstract representation of a vectorization source for Azure OpenAI On Your Data with vector search.", + "discriminator": { + "propertyName": "type", + "mapping": { + "endpoint": "#/components/schemas/onYourDataEndpointVectorizationSource", + "deployment_name": "#/components/schemas/onYourDataDeploymentNameVectorizationSource" + } + } + }, + "onYourDataVectorizationSourceType": { + "type": "string", + "description": "Represents the available sources Azure OpenAI On Your Data can use to configure vectorization of data for use with\nvector search.", + "enum": [ + "endpoint", + "deployment_name" + ], + "x-ms-enum": { + "name": "OnYourDataVectorizationSourceType", + "modelAsString": true, + "values": [ + { + "name": "endpoint", + "value": "endpoint", + "description": "Represents vectorization performed by public service calls to an Azure OpenAI embedding model." + }, + { + "name": "deploymentName", + "value": "deployment_name", + "description": "Represents an Ada model deployment name to use. This model deployment must be in the same Azure OpenAI resource, but\nOn Your Data will use this model deployment via an internal call rather than a public one, which enables vector\nsearch even in private networks." + } + ] + } + }, + "onYourDataDeploymentNameVectorizationSource": { + "required": [ + "deployment_name" + ], + "description": "The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based\non an internal embeddings model deployment name in the same Azure OpenAI resource.", + "allOf": [ + { + "$ref": "#/components/schemas/onYourDataVectorizationSource" + }, + { + "properties": { + "deployment_name": { + "type": "string", + "description": "Specifies the name of the model deployment to use for vectorization. This model deployment must be in the same Azure OpenAI resource, but On Your Data will use this model deployment via an internal call rather than a public one, which enables vector search even in private networks." + } + } + } + ], + "x-ms-discriminator-value": "deployment_name" + }, + "onYourDataEndpointVectorizationSource": { + "required": [ + "authentication", + "endpoint" + ], + "description": "The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based\non a public Azure OpenAI endpoint call for embeddings.", + "allOf": [ + { + "$ref": "#/components/schemas/onYourDataVectorizationSource" + }, + { + "properties": { + "authentication": { + "$ref": "#/components/schemas/onYourDataApiKeyAuthenticationOptions" + }, + "endpoint": { + "type": "string", + "description": "Specifies the endpoint to use for vectorization. This endpoint must be in the same Azure OpenAI resource, but On Your Data will use this endpoint via an internal call rather than a public one, which enables vector search even in private networks.", + "format": "uri" + } + } + } + ], + "x-ms-discriminator-value": "endpoint" + }, + "azureChatExtensionsMessageContext": { + "type": "object", + "properties": { + "citations": { + "type": "array", + "description": "The data source retrieval result, used to generate the assistant message in the response.", + "items": { + "$ref": "#/components/schemas/citation" + }, + "x-ms-identifiers": [] + }, + "intent": { + "type": "string", + "description": "The detected intent from the chat history, used to pass to the next turn to carry over the context." + } + }, + "description": " A representation of the additional context information available when Azure OpenAI chat extensions are involved\n in the generation of a corresponding chat completions response. This context information is only populated when\n using an Azure OpenAI request configured to use a matching extension." + }, + "citation": { + "required": [ + "content" + ], + "type": "object", + "properties": { + "content": { + "type": "string", + "description": "The content of the citation." + }, + "title": { + "type": "string", + "description": "The title of the citation." + }, + "url": { + "type": "string", + "description": "The URL of the citation." + }, + "filepath": { + "type": "string", + "description": "The file path of the citation." + }, + "chunk_id": { + "type": "string", + "description": "The chunk ID of the citation." + } + }, + "description": "citation information for a chat completions response message." + }, + "chatCompletionMessageToolCall": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The ID of the tool call." + }, + "type": { + "$ref": "#/components/schemas/toolCallType" + }, + "function": { + "type": "object", + "description": "The function that the model called.", + "properties": { + "name": { + "type": "string", + "description": "The name of the function to call." + }, + "arguments": { + "type": "string", + "description": "The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function." + } + }, + "required": [ + "name", + "arguments" + ] + } + }, + "required": [ + "id", + "type", + "function" + ] + }, + "toolCallType": { + "type": "string", + "enum": [ + "function" + ], + "description": "The type of the tool call, in this case `function`.", + "x-ms-enum": { + "name": "ToolCallType", + "modelAsString": true, + "values": [ + { + "value": "function", + "description": "The tool call type is function." + } + ] + } + }, + "chatCompletionRequestMessageTool": { + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionRequestMessage" + }, + { + "type": "object", + "nullable": true, + "properties": { + "tool_call_id": { + "type": "string", + "description": "Tool call that this message is responding to." + }, + "content": { + "type": "string", + "description": "The contents of the message.", + "nullable": true + } + } + } + ], + "required": [ + "tool_call_id", + "content" + ] + }, + "chatCompletionRequestMessageFunction": { + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionRequestMessage" + }, + { + "type": "object", + "description": "Deprecated. Message that represents a function.", + "nullable": true, + "properties": { + "role": { + "type": "string", + "enum": [ + "function" + ], + "description": "The role of the messages author, in this case `function`." + }, + "name": { + "type": "string", + "description": "The contents of the message." + }, + "content": { + "type": "string", + "description": "The contents of the message.", + "nullable": true + } + } + } + ], + "required": [ + "function_call_id", + "content" + ] + }, + "createChatCompletionResponse": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionsResponseCommon" + }, + { + "properties": { + "prompt_filter_results": { + "$ref": "#/components/schemas/promptFilterResults" + }, + "choices": { + "type": "array", + "items": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/chatCompletionChoiceCommon" + }, + { + "properties": { + "message": { + "$ref": "#/components/schemas/chatCompletionResponseMessage" + }, + "content_filter_results": { + "$ref": "#/components/schemas/contentFilterChoiceResults" + }, + "logprobs": { + "$ref": "#/components/schemas/chatCompletionChoiceLogProbs" + } + } + } + ] + } + } + } + } + ], + "required": [ + "id", + "object", + "created", + "model", + "choices" + ] + }, + "chatCompletionChoiceLogProbs": { + "description": "Log probability information for the choice.", + "type": "object", + "nullable": true, + "properties": { + "content": { + "description": "A list of message content tokens with log probability information.", + "type": "array", + "items": { + "$ref": "#/components/schemas/chatCompletionTokenLogprob" + }, + "nullable": true + } + }, + "required": [ + "content" + ] + }, + "chatCompletionTokenLogprob": { + "type": "object", + "properties": { + "token": { + "description": "The token.", + "type": "string" + }, + "logprob": { + "description": "The log probability of this token.", + "type": "number" + }, + "bytes": { + "description": "A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be `null` if there is no bytes representation for the token.", + "type": "array", + "items": { + "type": "integer" + }, + "nullable": true + }, + "top_logprobs": { + "description": "List of the most likely tokens and their log probability, at this token position. In rare cases, there may be fewer than the number of requested `top_logprobs` returned.", + "type": "array", + "items": { + "type": "object", + "properties": { + "token": { + "description": "The token.", + "type": "string" + }, + "logprob": { + "description": "The log probability of this token.", + "type": "number" + }, + "bytes": { + "description": "A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be `null` if there is no bytes representation for the token.", + "type": "array", + "items": { + "type": "integer" + }, + "nullable": true + } + }, + "required": [ + "token", + "logprob", + "bytes" + ] + } + } + }, + "required": [ + "token", + "logprob", + "bytes", + "top_logprobs" + ] + }, + "chatCompletionResponseMessage": { + "type": "object", + "description": "A chat completion message generated by the model.", + "properties": { + "role": { + "$ref": "#/components/schemas/chatCompletionResponseMessageRole" + }, + "content": { + "type": "string", + "description": "The contents of the message.", + "nullable": true + }, + "tool_calls": { + "type": "array", + "description": "The tool calls generated by the model, such as function calls.", + "items": { + "$ref": "#/components/schemas/chatCompletionMessageToolCall" + } + }, + "function_call": { + "$ref": "#/components/schemas/chatCompletionFunctionCall" + }, + "context": { + "$ref": "#/components/schemas/azureChatExtensionsMessageContext" + } + } + }, + "chatCompletionResponseMessageRole": { + "type": "string", + "enum": [ + "assistant" + ], + "description": "The role of the author of the response message." + }, + "chatCompletionToolChoiceOption": { + "description": "Controls which (if any) function is called by the model. `none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function. Specifying a particular function via `{\"type\": \"function\", \"function\": {\"name\": \"my_function\"}}` forces the model to call that function.", + "oneOf": [ + { + "type": "string", + "description": "`none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function.", + "enum": [ + "none", + "auto", + "required" + ] + }, + { + "$ref": "#/components/schemas/chatCompletionNamedToolChoice" + } + ] + }, + "chatCompletionNamedToolChoice": { + "type": "object", + "description": "Specifies a tool the model should use. Use to force the model to call a specific function.", + "properties": { + "type": { + "type": "string", + "enum": [ + "function" + ], + "description": "The type of the tool. Currently, only `function` is supported." + }, + "function": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the function to call." + } + }, + "required": [ + "name" + ] + } + } + }, + "chatCompletionFunctionCall": { + "type": "object", + "description": "Deprecated and replaced by `tool_calls`. The name and arguments of a function that should be called, as generated by the model.", + "properties": { + "name": { + "type": "string", + "description": "The name of the function to call." + }, + "arguments": { + "type": "string", + "description": "The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function." + } + }, + "required": [ + "name", + "arguments" + ] + }, + "chatCompletionsResponseCommon": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "A unique identifier for the chat completion." + }, + "object": { + "$ref": "#/components/schemas/chatCompletionResponseObject" + }, + "created": { + "type": "integer", + "format": "unixtime", + "description": "The Unix timestamp (in seconds) of when the chat completion was created." + }, + "model": { + "type": "string", + "description": "The model used for the chat completion." + }, + "usage": { + "$ref": "#/components/schemas/completionUsage" + }, + "system_fingerprint": { + "type": "string", + "description": "Can be used in conjunction with the `seed` request parameter to understand when backend changes have been made that might impact determinism." + } + }, + "required": [ + "id", + "object", + "created", + "model" + ] + }, + "chatCompletionResponseObject": { + "type": "string", + "description": "The object type.", + "enum": [ + "chat.completion" + ], + "x-ms-enum": { + "name": "ChatCompletionResponseObject", + "modelAsString": true, + "values": [ + { + "value": "chat.completion", + "description": "The object type is chat completion." + } + ] + } + }, + "completionUsage": { + "type": "object", + "description": "Usage statistics for the completion request.", + "properties": { + "prompt_tokens": { + "type": "integer", + "description": "Number of tokens in the prompt." + }, + "completion_tokens": { + "type": "integer", + "description": "Number of tokens in the generated completion." + }, + "total_tokens": { + "type": "integer", + "description": "Total number of tokens used in the request (prompt + completion)." + } + }, + "required": [ + "prompt_tokens", + "completion_tokens", + "total_tokens" + ] + }, + "chatCompletionTool": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/chatCompletionToolType" + }, + "function": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "A description of what the function does, used by the model to choose when and how to call the function." + }, + "name": { + "type": "string", + "description": "The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64." + }, + "parameters": { + "$ref": "#/components/schemas/chatCompletionFunctionParameters" + } + }, + "required": [ + "name", + "parameters" + ] + } + }, + "required": [ + "type", + "function" + ] + }, + "chatCompletionToolType": { + "type": "string", + "enum": [ + "function" + ], + "description": "The type of the tool. Currently, only `function` is supported.", + "x-ms-enum": { + "name": "ChatCompletionToolType", + "modelAsString": true, + "values": [ + { + "value": "function", + "description": "The tool type is function." + } + ] + } + }, + "chatCompletionChoiceCommon": { + "type": "object", + "properties": { + "index": { + "type": "integer" + }, + "finish_reason": { + "type": "string" + } + } + }, + "createTranslationRequest": { + "type": "object", + "description": "Translation request.", + "properties": { + "file": { + "type": "string", + "description": "The audio file to translate.", + "format": "binary" + }, + "prompt": { + "type": "string", + "description": "An optional text to guide the model's style or continue a previous audio segment. The prompt should be in English." + }, + "response_format": { + "$ref": "#/components/schemas/audioResponseFormat" + }, + "temperature": { + "type": "number", + "default": 0, + "description": "The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit." + } + }, + "required": [ + "file" + ] + }, + "audioResponse": { + "description": "Translation or transcription response when response_format was json", + "type": "object", + "properties": { + "text": { + "type": "string", + "description": "Translated or transcribed text." + } + }, + "required": [ + "text" + ] + }, + "audioVerboseResponse": { + "description": "Translation or transcription response when response_format was verbose_json", + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/audioResponse" + }, + { + "properties": { + "task": { + "type": "string", + "description": "Type of audio task.", + "enum": [ + "transcribe", + "translate" + ], + "x-ms-enum": { + "modelAsString": true + } + }, + "language": { + "type": "string", + "description": "Language." + }, + "duration": { + "type": "number", + "description": "Duration." + }, + "segments": { + "type": "array", + "items": { + "$ref": "#/components/schemas/audioSegment" + } + } + } + } + ], + "required": [ + "text" + ] + }, + "audioResponseFormat": { + "title": "AudioResponseFormat", + "description": "Defines the format of the output.", + "enum": [ + "json", + "text", + "srt", + "verbose_json", + "vtt" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true + } + }, + "createTranscriptionRequest": { + "type": "object", + "description": "Transcription request.", + "properties": { + "file": { + "type": "string", + "description": "The audio file object to transcribe.", + "format": "binary" + }, + "prompt": { + "type": "string", + "description": "An optional text to guide the model's style or continue a previous audio segment. The prompt should match the audio language." + }, + "response_format": { + "$ref": "#/components/schemas/audioResponseFormat" + }, + "temperature": { + "type": "number", + "default": 0, + "description": "The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit." + }, + "language": { + "type": "string", + "description": "The language of the input audio. Supplying the input language in ISO-639-1 format will improve accuracy and latency." + } + }, + "required": [ + "file" + ] + }, + "audioSegment": { + "type": "object", + "description": "Transcription or translation segment.", + "properties": { + "id": { + "type": "integer", + "description": "Segment identifier." + }, + "seek": { + "type": "number", + "description": "Offset of the segment." + }, + "start": { + "type": "number", + "description": "Segment start offset." + }, + "end": { + "type": "number", + "description": "Segment end offset." + }, + "text": { + "type": "string", + "description": "Segment text." + }, + "tokens": { + "type": "array", + "items": { + "type": "number", + "nullable": false + }, + "description": "Tokens of the text." + }, + "temperature": { + "type": "number", + "description": "Temperature." + }, + "avg_logprob": { + "type": "number", + "description": "Average log probability." + }, + "compression_ratio": { + "type": "number", + "description": "Compression ratio." + }, + "no_speech_prob": { + "type": "number", + "description": "Probability of 'no speech'." + } + } + }, + "imageQuality": { + "description": "The quality of the image that will be generated.", + "type": "string", + "enum": [ + "standard", + "hd" + ], + "default": "standard", + "x-ms-enum": { + "name": "Quality", + "modelAsString": true, + "values": [ + { + "value": "standard", + "description": "Standard quality creates images with standard quality.", + "name": "Standard" + }, + { + "value": "hd", + "description": "HD quality creates images with finer details and greater consistency across the image.", + "name": "HD" + } + ] + } + }, + "imagesResponseFormat": { + "description": "The format in which the generated images are returned.", + "type": "string", + "enum": [ + "url", + "b64_json" + ], + "default": "url", + "x-ms-enum": { + "name": "ImagesResponseFormat", + "modelAsString": true, + "values": [ + { + "value": "url", + "description": "The URL that provides temporary access to download the generated images.", + "name": "Url" + }, + { + "value": "b64_json", + "description": "The generated images are returned as base64 encoded string.", + "name": "Base64Json" + } + ] + } + }, + "imageSize": { + "description": "The size of the generated images.", + "type": "string", + "enum": [ + "1792x1024", + "1024x1792", + "1024x1024" + ], + "default": "1024x1024", + "x-ms-enum": { + "name": "Size", + "modelAsString": true, + "values": [ + { + "value": "1792x1024", + "description": "The desired size of the generated image is 1792x1024 pixels.", + "name": "Size1792x1024" + }, + { + "value": "1024x1792", + "description": "The desired size of the generated image is 1024x1792 pixels.", + "name": "Size1024x1792" + }, + { + "value": "1024x1024", + "description": "The desired size of the generated image is 1024x1024 pixels.", + "name": "Size1024x1024" + } + ] + } + }, + "imageStyle": { + "description": "The style of the generated images.", + "type": "string", + "enum": [ + "vivid", + "natural" + ], + "default": "vivid", + "x-ms-enum": { + "name": "Style", + "modelAsString": true, + "values": [ + { + "value": "vivid", + "description": "Vivid creates images that are hyper-realistic and dramatic.", + "name": "Vivid" + }, + { + "value": "natural", + "description": "Natural creates images that are more natural and less hyper-realistic.", + "name": "Natural" + } + ] + } + }, + "imageGenerationsRequest": { + "type": "object", + "properties": { + "prompt": { + "description": "A text description of the desired image(s). The maximum length is 4000 characters.", + "type": "string", + "format": "string", + "example": "a corgi in a field", + "minLength": 1 + }, + "n": { + "description": "The number of images to generate.", + "type": "integer", + "minimum": 1, + "maximum": 1, + "default": 1 + }, + "size": { + "$ref": "#/components/schemas/imageSize" + }, + "response_format": { + "$ref": "#/components/schemas/imagesResponseFormat" + }, + "user": { + "description": "A unique identifier representing your end-user, which can help to monitor and detect abuse.", + "type": "string", + "format": "string", + "example": "user123456" + }, + "quality": { + "$ref": "#/components/schemas/imageQuality" + }, + "style": { + "$ref": "#/components/schemas/imageStyle" + } + }, + "required": [ + "prompt" + ] + }, + "generateImagesResponse": { + "type": "object", + "properties": { + "created": { + "type": "integer", + "format": "unixtime", + "description": "The unix timestamp when the operation was created.", + "example": "1676540381" + }, + "data": { + "type": "array", + "description": "The result data of the operation, if successful", + "items": { + "$ref": "#/components/schemas/imageResult" + } + } + }, + "required": [ + "created", + "data" + ] + }, + "imageResult": { + "type": "object", + "description": "The image url or encoded image if successful, and an error otherwise.", + "properties": { + "url": { + "type": "string", + "description": "The image url.", + "example": "https://www.contoso.com" + }, + "b64_json": { + "type": "string", + "description": "The base64 encoded image" + }, + "content_filter_results": { + "$ref": "#/components/schemas/dalleContentFilterResults" + }, + "revised_prompt": { + "type": "string", + "description": "The prompt that was used to generate the image, if there was any revision to the prompt." + }, + "prompt_filter_results": { + "$ref": "#/components/schemas/dalleFilterResults" + } + } + } + }, + "securitySchemes": { + "bearer": { + "type": "oauth2", + "flows": { + "implicit": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": {} + } + }, + "x-tokenInfoFunc": "api.middleware.auth.bearer_auth", + "x-scopeValidateFunc": "api.middleware.auth.validate_scopes" + }, + "apiKey": { + "type": "apiKey", + "name": "api-key", + "in": "header" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/inference.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/inference.yaml new file mode 100644 index 000000000000..ec13cc22da6d --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2024-06-01/inference.yaml @@ -0,0 +1,2084 @@ +openapi: 3.0.0 +info: + title: Azure OpenAI Service API + description: Azure OpenAI APIs for completions and search + version: '2024-06-01' +servers: + - url: https://{endpoint}/openai + variables: + endpoint: + default: your-resource-name.openai.azure.com +security: + - bearer: + - api.read + - apiKey: [] +paths: + /deployments/{deployment-id}/completions: + post: + summary: Creates a completion for the provided prompt, parameters and chosen model. + operationId: Completions_Create + parameters: + - in: path + name: deployment-id + required: true + schema: + type: string + example: davinci + description: Deployment id of the model which was deployed. + - in: query + name: api-version + required: true + schema: + type: string + example: 2024-06-01 + description: api version + requestBody: + required: true + content: + application/json: + schema: + type: object + properties: + prompt: + description: |- + The prompt(s) to generate completions for, encoded as a string or array of strings. + Note that <|endoftext|> is the document separator that the model sees during training, so if a prompt is not specified the model will generate as if from the beginning of a new document. Maximum allowed size of string list is 2048. + oneOf: + - type: string + default: '' + example: This is a test. + nullable: true + - type: array + items: + type: string + default: '' + example: This is a test. + nullable: false + description: Array size minimum of 1 and maximum of 2048 + max_tokens: + description: The token count of your prompt plus max_tokens cannot exceed the model's context length. Most models have a context length of 2048 tokens (except for the newest models, which support 4096). Has minimum of 0. + type: integer + default: 16 + example: 16 + nullable: true + temperature: + description: |- + What sampling temperature to use. Higher values means the model will take more risks. Try 0.9 for more creative applications, and 0 (argmax sampling) for ones with a well-defined answer. + We generally recommend altering this or top_p but not both. + type: number + default: 1 + example: 1 + nullable: true + top_p: + description: |- + An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered. + We generally recommend altering this or temperature but not both. + type: number + default: 1 + example: 1 + nullable: true + logit_bias: + description: Defaults to null. Modify the likelihood of specified tokens appearing in the completion. Accepts a json object that maps tokens (specified by their token ID in the GPT tokenizer) to an associated bias value from -100 to 100. You can use this tokenizer tool (which works for both GPT-2 and GPT-3) to convert text to token IDs. Mathematically, the bias is added to the logits generated by the model prior to sampling. The exact effect will vary per model, but values between -1 and 1 should decrease or increase likelihood of selection; values like -100 or 100 should result in a ban or exclusive selection of the relevant token. As an example, you can pass {"50256" : -100} to prevent the <|endoftext|> token from being generated. + type: object + nullable: false + user: + description: A unique identifier representing your end-user, which can help monitoring and detecting abuse + type: string + nullable: false + 'n': + description: |- + How many completions to generate for each prompt. Minimum of 1 and maximum of 128 allowed. + Note: Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for max_tokens and stop. + type: integer + default: 1 + example: 1 + nullable: true + stream: + description: 'Whether to stream back partial progress. If set, tokens will be sent as data-only server-sent events as they become available, with the stream terminated by a data: [DONE] message.' + type: boolean + nullable: true + default: false + logprobs: + description: |- + Include the log probabilities on the logprobs most likely tokens, as well the chosen tokens. For example, if logprobs is 5, the API will return a list of the 5 most likely tokens. The API will always return the logprob of the sampled token, so there may be up to logprobs+1 elements in the response. + Minimum of 0 and maximum of 5 allowed. + type: integer + default: null + nullable: true + suffix: + type: string + nullable: true + description: The suffix that comes after a completion of inserted text. + echo: + description: Echo back the prompt in addition to the completion + type: boolean + default: false + nullable: true + stop: + description: Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence. + oneOf: + - type: string + default: <|endoftext|> + example: |+ + nullable: true + - type: array + items: + type: string + example: |+ + nullable: false + description: Array minimum size of 1 and maximum of 4 + completion_config: + type: string + nullable: true + presence_penalty: + description: Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics. + type: number + default: 0 + frequency_penalty: + description: Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim. + type: number + default: 0 + best_of: + description: |- + Generates best_of completions server-side and returns the "best" (the one with the highest log probability per token). Results cannot be streamed. + When used with n, best_of controls the number of candidate completions and n specifies how many to return - best_of must be greater than n. + Note: Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for max_tokens and stop. Has maximum value of 128. + type: integer + example: + prompt: |- + Negate the following sentence.The price for bubblegum increased on thursday. + Negated Sentence: + max_tokens: 50 + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + id: + type: string + object: + type: string + created: + type: integer + model: + type: string + prompt_filter_results: + $ref: '#/components/schemas/promptFilterResults' + choices: + type: array + items: + type: object + properties: + text: + type: string + index: + type: integer + logprobs: + type: object + properties: + tokens: + type: array + items: + type: string + token_logprobs: + type: array + items: + type: number + top_logprobs: + type: array + items: + type: object + additionalProperties: + type: number + text_offset: + type: array + items: + type: integer + nullable: true + finish_reason: + type: string + content_filter_results: + $ref: '#/components/schemas/contentFilterChoiceResults' + usage: + type: object + properties: + completion_tokens: + type: number + format: int32 + prompt_tokens: + type: number + format: int32 + total_tokens: + type: number + format: int32 + required: + - prompt_tokens + - total_tokens + - completion_tokens + required: + - id + - object + - created + - model + - choices + example: + model: davinci + object: text_completion + id: cmpl-4509KAos68kxOqpE2uYGw81j6m7uo + created: 1637097562 + choices: + - index: 0 + text: The price for bubblegum decreased on thursday. + logprobs: null + finish_reason: stop + headers: + apim-request-id: + description: Request ID for troubleshooting purposes + schema: + type: string + default: + description: Service unavailable + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse' + headers: + apim-request-id: + description: Request ID for troubleshooting purposes + schema: + type: string + /deployments/{deployment-id}/embeddings: + post: + summary: Get a vector representation of a given input that can be easily consumed by machine learning models and algorithms. + operationId: embeddings_create + parameters: + - in: path + name: deployment-id + required: true + schema: + type: string + example: ada-search-index-v1 + description: The deployment id of the model which was deployed. + - in: query + name: api-version + required: true + schema: + type: string + example: '2024-06-01' + description: api version + requestBody: + required: true + content: + application/json: + schema: + type: object + additionalProperties: true + properties: + input: + description: |- + Input text to get embeddings for, encoded as a string. To get embeddings for multiple inputs in a single request, pass an array of strings. Each input must not exceed 2048 tokens in length. + Unless you are embedding code, we suggest replacing newlines (\n) in your input with a single space, as we have observed inferior results when newlines are present. + oneOf: + - type: string + default: '' + example: This is a test. + nullable: true + - type: array + minItems: 1 + maxItems: 2048 + items: + type: string + minLength: 1 + example: This is a test. + nullable: false + user: + description: A unique identifier representing your end-user, which can help monitoring and detecting abuse. + type: string + nullable: false + input_type: + description: input type of embedding search to use + type: string + example: query + encoding_format: + description: The format to return the embeddings in. Can be either `float` or `base64`. Defaults to `float`. + type: string + example: base64 + nullable: true + dimensions: + description: The number of dimensions the resulting output embeddings should have. Only supported in `text-embedding-3` and later models. + type: integer + example: 1 + nullable: true + required: + - input + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + object: + type: string + model: + type: string + data: + type: array + items: + type: object + properties: + index: + type: integer + object: + type: string + embedding: + type: array + items: + type: number + required: + - index + - object + - embedding + usage: + type: object + properties: + prompt_tokens: + type: integer + total_tokens: + type: integer + required: + - prompt_tokens + - total_tokens + required: + - object + - model + - data + - usage + x-ms-examples: + Create a embeddings.: + $ref: ./examples/embeddings.yaml + /deployments/{deployment-id}/chat/completions: + post: + summary: Creates a completion for the chat message + operationId: ChatCompletions_Create + parameters: + - in: path + name: deployment-id + required: true + schema: + type: string + description: Deployment id of the model which was deployed. + - in: query + name: api-version + required: true + schema: + type: string + example: '2024-06-01' + description: api version + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/createChatCompletionRequest' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/createChatCompletionResponse' + headers: + apim-request-id: + description: Request ID for troubleshooting purposes + schema: + type: string + default: + description: Service unavailable + content: + application/json: + schema: + $ref: '#/components/schemas/errorResponse' + headers: + apim-request-id: + description: Request ID for troubleshooting purposes + schema: + type: string + x-ms-examples: + Create a chat completion.: + $ref: ./examples/chat_completions.yaml + Creates a completion based on Azure Search data and system-assigned managed identity.: + $ref: ./examples/chat_completions_azure_search_minimum.yaml + Creates a completion based on Azure Search vector data, previous assistant message and user-assigned managed identity.: + $ref: ./examples/chat_completions_azure_search_advanced.yaml + Creates a completion for the provided Azure Cosmos DB.: + $ref: ./examples/chat_completions_cosmos_db.yaml + /deployments/{deployment-id}/audio/transcriptions: + post: + summary: Transcribes audio into the input language. + operationId: Transcriptions_Create + parameters: + - in: path + name: deployment-id + required: true + schema: + type: string + example: whisper + description: Deployment id of the whisper model. + - in: query + name: api-version + required: true + schema: + type: string + example: '2024-06-01' + description: api version + requestBody: + required: true + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/createTranscriptionRequest' + responses: + '200': + description: OK + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/audioResponse' + - $ref: '#/components/schemas/audioVerboseResponse' + text/plain: + schema: + type: string + description: Transcribed text in the output format (when response_format was one of text, vtt or srt). + x-ms-examples: + Create an audio transcription with json response format.: + $ref: ./examples/audio_transcription_object.yaml + Create an audio transcription with text response format.: + $ref: ./examples/audio_transcription_text.yaml + /deployments/{deployment-id}/audio/translations: + post: + summary: Transcribes and translates input audio into English text. + operationId: Translations_Create + parameters: + - in: path + name: deployment-id + required: true + schema: + type: string + example: whisper + description: Deployment id of the whisper model which was deployed. + - in: query + name: api-version + required: true + schema: + type: string + example: '2024-06-01' + description: api version + requestBody: + required: true + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/createTranslationRequest' + responses: + '200': + description: OK + content: + application/json: + schema: + oneOf: + - $ref: '#/components/schemas/audioResponse' + - $ref: '#/components/schemas/audioVerboseResponse' + text/plain: + schema: + type: string + description: Transcribed text in the output format (when response_format was one of text, vtt or srt). + x-ms-examples: + Create an audio translation with json response format.: + $ref: ./examples/audio_translation_object.yaml + Create an audio translation with text response format.: + $ref: ./examples/audio_translation_text.yaml + /deployments/{deployment-id}/images/generations: + post: + summary: Generates a batch of images from a text caption on a given DALLE model deployment + operationId: ImageGenerations_Create + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/imageGenerationsRequest' + parameters: + - in: path + name: deployment-id + required: true + schema: + type: string + example: dalle-deployment + description: Deployment id of the dalle model which was deployed. + - in: query + name: api-version + required: true + schema: + type: string + example: '2024-06-01' + description: api version + responses: + '200': + description: Ok + content: + application/json: + schema: + $ref: '#/components/schemas/generateImagesResponse' + default: + description: An error occurred. + content: + application/json: + schema: + $ref: '#/components/schemas/dalleErrorResponse' + x-ms-examples: + Create an image.: + $ref: ./examples/image_generation.yaml +components: + schemas: + errorResponse: + type: object + properties: + error: + $ref: '#/components/schemas/error' + errorBase: + type: object + properties: + code: + type: string + message: + type: string + error: + type: object + allOf: + - $ref: '#/components/schemas/errorBase' + properties: + param: + type: string + type: + type: string + inner_error: + $ref: '#/components/schemas/innerError' + innerError: + description: Inner error with additional details. + type: object + properties: + code: + $ref: '#/components/schemas/innerErrorCode' + content_filter_results: + $ref: '#/components/schemas/contentFilterPromptResults' + innerErrorCode: + description: Error codes for the inner error object. + enum: + - ResponsibleAIPolicyViolation + type: string + x-ms-enum: + name: InnerErrorCode + modelAsString: true + values: + - value: ResponsibleAIPolicyViolation + description: The prompt violated one of more content filter rules. + dalleErrorResponse: + type: object + properties: + error: + $ref: '#/components/schemas/dalleError' + dalleError: + type: object + allOf: + - $ref: '#/components/schemas/errorBase' + properties: + param: + type: string + type: + type: string + inner_error: + $ref: '#/components/schemas/dalleInnerError' + dalleInnerError: + description: Inner error with additional details. + type: object + properties: + code: + $ref: '#/components/schemas/innerErrorCode' + content_filter_results: + $ref: '#/components/schemas/dalleFilterResults' + revised_prompt: + type: string + description: The prompt that was used to generate the image, if there was any revision to the prompt. + contentFilterResultBase: + type: object + properties: + filtered: + type: boolean + required: + - filtered + contentFilterSeverityResult: + type: object + allOf: + - $ref: '#/components/schemas/contentFilterResultBase' + - properties: + severity: + type: string + enum: + - safe + - low + - medium + - high + x-ms-enum: + name: ContentFilterSeverity + modelAsString: true + values: + - value: safe + description: General content or related content in generic or non-harmful contexts. + - value: low + description: Harmful content at a low intensity and risk level. + - value: medium + description: Harmful content at a medium intensity and risk level. + - value: high + description: Harmful content at a high intensity and risk level. + required: + - severity + - filtered + contentFilterDetectedResult: + type: object + allOf: + - $ref: '#/components/schemas/contentFilterResultBase' + - properties: + detected: + type: boolean + required: + - detected + - filtered + contentFilterDetectedWithCitationResult: + type: object + allOf: + - $ref: '#/components/schemas/contentFilterDetectedResult' + - properties: + citation: + type: object + properties: + URL: + type: string + license: + type: string + required: + - detected + - filtered + contentFilterResultsBase: + type: object + description: Information about the content filtering results. + properties: + sexual: + $ref: '#/components/schemas/contentFilterSeverityResult' + violence: + $ref: '#/components/schemas/contentFilterSeverityResult' + hate: + $ref: '#/components/schemas/contentFilterSeverityResult' + self_harm: + $ref: '#/components/schemas/contentFilterSeverityResult' + profanity: + $ref: '#/components/schemas/contentFilterDetectedResult' + error: + $ref: '#/components/schemas/errorBase' + contentFilterPromptResults: + type: object + description: Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about jailbreak content and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id. + allOf: + - $ref: '#/components/schemas/contentFilterResultsBase' + - properties: + jailbreak: + $ref: '#/components/schemas/contentFilterDetectedResult' + contentFilterChoiceResults: + type: object + description: Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about third party text and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id. + allOf: + - $ref: '#/components/schemas/contentFilterResultsBase' + - properties: + protected_material_text: + $ref: '#/components/schemas/contentFilterDetectedResult' + - properties: + protected_material_code: + $ref: '#/components/schemas/contentFilterDetectedWithCitationResult' + promptFilterResult: + type: object + description: Content filtering results for a single prompt in the request. + properties: + prompt_index: + type: integer + content_filter_results: + $ref: '#/components/schemas/contentFilterPromptResults' + promptFilterResults: + type: array + description: Content filtering results for zero or more prompts in the request. In a streaming request, results for different prompts may arrive at different times or in different orders. + items: + $ref: '#/components/schemas/promptFilterResult' + dalleContentFilterResults: + type: object + description: Information about the content filtering results. + properties: + sexual: + $ref: '#/components/schemas/contentFilterSeverityResult' + violence: + $ref: '#/components/schemas/contentFilterSeverityResult' + hate: + $ref: '#/components/schemas/contentFilterSeverityResult' + self_harm: + $ref: '#/components/schemas/contentFilterSeverityResult' + dalleFilterResults: + type: object + description: Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about jailbreak content and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id. + allOf: + - $ref: '#/components/schemas/dalleContentFilterResults' + - properties: + profanity: + $ref: '#/components/schemas/contentFilterDetectedResult' + jailbreak: + $ref: '#/components/schemas/contentFilterDetectedResult' + chatCompletionsRequestCommon: + type: object + properties: + temperature: + description: |- + What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. + We generally recommend altering this or `top_p` but not both. + type: number + minimum: 0 + maximum: 2 + default: 1 + example: 1 + nullable: true + top_p: + description: |- + An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered. + We generally recommend altering this or `temperature` but not both. + type: number + minimum: 0 + maximum: 1 + default: 1 + example: 1 + nullable: true + stream: + description: 'If set, partial message deltas will be sent, like in ChatGPT. Tokens will be sent as data-only server-sent events as they become available, with the stream terminated by a `data: [DONE]` message.' + type: boolean + nullable: true + default: false + stop: + description: Up to 4 sequences where the API will stop generating further tokens. + oneOf: + - type: string + nullable: true + - type: array + items: + type: string + nullable: false + minItems: 1 + maxItems: 4 + description: Array minimum size of 1 and maximum of 4 + default: null + max_tokens: + description: The maximum number of tokens allowed for the generated answer. By default, the number of tokens the model can return will be (4096 - prompt tokens). + type: integer + default: 4096 + presence_penalty: + description: Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics. + type: number + default: 0 + minimum: -2 + maximum: 2 + frequency_penalty: + description: Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim. + type: number + default: 0 + minimum: -2 + maximum: 2 + logit_bias: + description: Modify the likelihood of specified tokens appearing in the completion. Accepts a json object that maps tokens (specified by their token ID in the tokenizer) to an associated bias value from -100 to 100. Mathematically, the bias is added to the logits generated by the model prior to sampling. The exact effect will vary per model, but values between -1 and 1 should decrease or increase likelihood of selection; values like -100 or 100 should result in a ban or exclusive selection of the relevant token. + type: object + nullable: true + user: + description: A unique identifier representing your end-user, which can help Azure OpenAI to monitor and detect abuse. + type: string + example: user-1234 + nullable: false + createChatCompletionRequest: + type: object + allOf: + - $ref: '#/components/schemas/chatCompletionsRequestCommon' + - properties: + messages: + description: A list of messages comprising the conversation so far. [Example Python code](https://github.com/openai/openai-cookbook/blob/main/examples/How_to_format_inputs_to_ChatGPT_models.ipynb). + type: array + minItems: 1 + items: + $ref: '#/components/schemas/chatCompletionRequestMessage' + data_sources: + type: array + description: |2- + The configuration entries for Azure OpenAI chat extensions that use them. + This additional specification is only compatible with Azure OpenAI. + items: + $ref: '#/components/schemas/azureChatExtensionConfiguration' + 'n': + type: integer + minimum: 1 + maximum: 128 + default: 1 + example: 1 + nullable: true + description: How many chat completion choices to generate for each input message. + seed: + type: integer + minimum: -9223372036854775808 + maximum: 9223372036854775807 + default: 0 + example: 1 + nullable: true + description: If specified, our system will make a best effort to sample deterministically, such that repeated requests with the same `seed` and parameters should return the same result.Determinism is not guaranteed, and you should refer to the `system_fingerprint` response parameter to monitor changes in the backend. + logprobs: + description: Whether to return log probabilities of the output tokens or not. If true, returns the log probabilities of each output token returned in the `content` of `message`. This option is currently not available on the `gpt-4-vision-preview` model. + type: boolean + default: false + nullable: true + top_logprobs: + description: An integer between 0 and 5 specifying the number of most likely tokens to return at each token position, each with an associated log probability. `logprobs` must be set to `true` if this parameter is used. + type: integer + minimum: 0 + maximum: 5 + nullable: true + response_format: + type: object + description: An object specifying the format that the model must output. Used to enable JSON mode. + properties: + type: + $ref: '#/components/schemas/chatCompletionResponseFormat' + tools: + description: A list of tools the model may call. Currently, only functions are supported as a tool. Use this to provide a list of functions the model may generate JSON inputs for. + type: array + minItems: 1 + items: + $ref: '#/components/schemas/chatCompletionTool' + tool_choice: + $ref: '#/components/schemas/chatCompletionToolChoiceOption' + functions: + description: Deprecated in favor of `tools`. A list of functions the model may generate JSON inputs for. + type: array + minItems: 1 + maxItems: 128 + items: + $ref: '#/components/schemas/chatCompletionFunction' + function_call: + description: Deprecated in favor of `tool_choice`. Controls how the model responds to function calls. "none" means the model does not call a function, and responds to the end-user. "auto" means the model can pick between an end-user or calling a function. Specifying a particular function via `{"name":\ "my_function"}` forces the model to call that function. "none" is the default when no functions are present. "auto" is the default if functions are present. + oneOf: + - type: string + enum: + - none + - auto + description: '`none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function.' + - type: object + description: 'Specifying a particular function via `{"name": "my_function"}` forces the model to call that function.' + properties: + name: + type: string + description: The name of the function to call. + required: + - name + required: + - messages + chatCompletionResponseFormat: + type: string + enum: + - text + - json_object + default: text + example: json_object + nullable: true + description: Setting to `json_object` enables JSON mode. This guarantees that the message the model generates is valid JSON. + x-ms-enum: + name: ChatCompletionResponseFormat + modelAsString: true + values: + - value: text + description: Response format is a plain text string. + - value: json_object + description: Response format is a JSON object. + chatCompletionFunction: + type: object + properties: + name: + type: string + description: The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64. + description: + type: string + description: The description of what the function does. + parameters: + $ref: '#/components/schemas/chatCompletionFunctionParameters' + required: + - name + chatCompletionFunctionParameters: + type: object + description: The parameters the functions accepts, described as a JSON Schema object. See the [guide](/docs/guides/gpt/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format. + additionalProperties: true + chatCompletionRequestMessage: + type: object + properties: + role: + $ref: '#/components/schemas/chatCompletionRequestMessageRole' + discriminator: + propertyName: role + mapping: + system: '#/components/schemas/chatCompletionRequestMessageSystem' + user: '#/components/schemas/chatCompletionRequestMessageUser' + assistant: '#/components/schemas/chatCompletionRequestMessageAssistant' + tool: '#/components/schemas/chatCompletionRequestMessageTool' + function: '#/components/schemas/chatCompletionRequestMessageFunction' + required: + - role + chatCompletionRequestMessageRole: + type: string + enum: + - system + - user + - assistant + - tool + - function + description: The role of the messages author. + x-ms-enum: + name: ChatCompletionRequestMessageRole + modelAsString: true + values: + - value: system + description: The message author role is system. + - value: user + description: The message author role is user. + - value: assistant + description: The message author role is assistant. + - value: tool + description: The message author role is tool. + - value: function + description: Deprecated. The message author role is function. + chatCompletionRequestMessageSystem: + allOf: + - $ref: '#/components/schemas/chatCompletionRequestMessage' + - type: object + properties: + content: + type: string + description: The contents of the message. + nullable: true + required: + - content + chatCompletionRequestMessageUser: + allOf: + - $ref: '#/components/schemas/chatCompletionRequestMessage' + - type: object + properties: + content: + oneOf: + - type: string + description: The contents of the message. + - type: array + description: An array of content parts with a defined type, each can be of type `text` or `image_url` when passing in images. You can pass multiple images by adding multiple `image_url` content parts. Image input is only supported when using the `gpt-4-visual-preview` model. + minimum: 1 + items: + $ref: '#/components/schemas/chatCompletionRequestMessageContentPart' + nullable: true + required: + - content + chatCompletionRequestMessageContentPart: + type: object + properties: + type: + $ref: '#/components/schemas/chatCompletionRequestMessageContentPartType' + discriminator: + propertyName: type + mapping: + text: '#/components/schemas/chatCompletionRequestMessageContentPartText' + image_url: '#/components/schemas/chatCompletionRequestMessageContentPartImage' + required: + - type + chatCompletionRequestMessageContentPartType: + type: string + enum: + - text + - image_url + description: The type of the content part. + x-ms-enum: + name: ChatCompletionRequestMessageContentPartType + modelAsString: true + values: + - value: text + description: The content part type is text. + - value: image_url + description: The content part type is image_url. + chatCompletionRequestMessageContentPartText: + allOf: + - $ref: '#/components/schemas/chatCompletionRequestMessageContentPart' + - type: object + properties: + text: + type: string + description: The text content. + required: + - text + chatCompletionRequestMessageContentPartImage: + allOf: + - $ref: '#/components/schemas/chatCompletionRequestMessageContentPart' + - type: object + properties: + url: + type: string + description: Either a URL of the image or the base64 encoded image data. + format: uri + detail: + $ref: '#/components/schemas/imageDetailLevel' + required: + - url + imageDetailLevel: + type: string + description: Specifies the detail level of the image. + enum: + - auto + - low + - high + default: auto + x-ms-enum: + name: ImageDetailLevel + modelAsString: true + values: + - value: auto + description: The image detail level is auto. + - value: low + description: The image detail level is low. + - value: high + description: The image detail level is high. + chatCompletionRequestMessageAssistant: + allOf: + - $ref: '#/components/schemas/chatCompletionRequestMessage' + - type: object + properties: + content: + type: string + description: The contents of the message. + nullable: true + tool_calls: + type: array + description: The tool calls generated by the model, such as function calls. + items: + $ref: '#/components/schemas/chatCompletionMessageToolCall' + context: + $ref: '#/components/schemas/azureChatExtensionsMessageContext' + required: + - content + azureChatExtensionConfiguration: + required: + - type + type: object + properties: + type: + $ref: '#/components/schemas/azureChatExtensionType' + description: |2- + A representation of configuration data for a single Azure OpenAI chat extension. This will be used by a chat + completions request that should use Azure OpenAI chat extensions to augment the response behavior. + The use of this configuration is compatible only with Azure OpenAI. + discriminator: + propertyName: type + mapping: + azure_search: '#/components/schemas/azureSearchChatExtensionConfiguration' + azure_cosmos_db: '#/components/schemas/azureCosmosDBChatExtensionConfiguration' + azureChatExtensionType: + type: string + description: |2- + A representation of configuration data for a single Azure OpenAI chat extension. This will be used by a chat + completions request that should use Azure OpenAI chat extensions to augment the response behavior. + The use of this configuration is compatible only with Azure OpenAI. + enum: + - azure_search + - azure_cosmos_db + x-ms-enum: + name: AzureChatExtensionType + modelAsString: true + values: + - name: azureSearch + value: azure_search + description: Represents the use of Azure Search as an Azure OpenAI chat extension. + - name: azureCosmosDB + value: azure_cosmos_db + description: Represents the use of Azure Cosmos DB as an Azure OpenAI chat extension. + azureSearchChatExtensionConfiguration: + required: + - parameters + description: |- + A specific representation of configurable options for Azure Search when using it as an Azure OpenAI chat + extension. + allOf: + - $ref: '#/components/schemas/azureChatExtensionConfiguration' + - properties: + parameters: + $ref: '#/components/schemas/azureSearchChatExtensionParameters' + x-ms-discriminator-value: azure_search + azureSearchChatExtensionParameters: + required: + - authentication + - endpoint + - index_name + type: object + properties: + authentication: + oneOf: + - $ref: '#/components/schemas/onYourDataApiKeyAuthenticationOptions' + - $ref: '#/components/schemas/onYourDataSystemAssignedManagedIdentityAuthenticationOptions' + - $ref: '#/components/schemas/onYourDataUserAssignedManagedIdentityAuthenticationOptions' + top_n_documents: + type: integer + description: The configured top number of documents to feature for the configured query. + format: int32 + in_scope: + type: boolean + description: Whether queries should be restricted to use of indexed data. + strictness: + maximum: 5 + minimum: 1 + type: integer + description: The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer. + format: int32 + role_information: + type: string + description: Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit. + endpoint: + type: string + description: The absolute endpoint path for the Azure Search resource to use. + format: uri + index_name: + type: string + description: The name of the index to use as available in the referenced Azure Search resource. + fields_mapping: + $ref: '#/components/schemas/azureSearchIndexFieldMappingOptions' + query_type: + $ref: '#/components/schemas/azureSearchQueryType' + semantic_configuration: + type: string + description: The additional semantic configuration for the query. + filter: + type: string + description: Search filter. + embedding_dependency: + oneOf: + - $ref: '#/components/schemas/onYourDataEndpointVectorizationSource' + - $ref: '#/components/schemas/onYourDataDeploymentNameVectorizationSource' + description: Parameters for Azure Search when used as an Azure OpenAI chat extension. + azureSearchIndexFieldMappingOptions: + type: object + properties: + title_field: + type: string + description: The name of the index field to use as a title. + url_field: + type: string + description: The name of the index field to use as a URL. + filepath_field: + type: string + description: The name of the index field to use as a filepath. + content_fields: + type: array + description: The names of index fields that should be treated as content. + items: + type: string + content_fields_separator: + type: string + description: The separator pattern that content fields should use. + vector_fields: + type: array + description: The names of fields that represent vector data. + items: + type: string + description: Optional settings to control how fields are processed when using a configured Azure Search resource. + azureSearchQueryType: + type: string + description: The type of Azure Search retrieval query that should be executed when using it as an Azure OpenAI chat extension. + enum: + - simple + - semantic + - vector + - vector_simple_hybrid + - vector_semantic_hybrid + x-ms-enum: + name: azureSearchQueryType + modelAsString: true + values: + - name: simple + value: simple + description: Represents the default, simple query parser. + - name: semantic + value: semantic + description: Represents the semantic query parser for advanced semantic modeling. + - name: vector + value: vector + description: Represents vector search over computed data. + - name: vectorSimpleHybrid + value: vector_simple_hybrid + description: Represents a combination of the simple query strategy with vector data. + - name: vectorSemanticHybrid + value: vector_semantic_hybrid + description: Represents a combination of semantic search and vector data querying. + azureCosmosDBChatExtensionConfiguration: + required: + - parameters + description: |- + A specific representation of configurable options for Azure Cosmos DB when using it as an Azure OpenAI chat + extension. + allOf: + - $ref: '#/components/schemas/azureChatExtensionConfiguration' + - properties: + parameters: + $ref: '#/components/schemas/azureCosmosDBChatExtensionParameters' + x-ms-discriminator-value: azure_cosmos_db + azureCosmosDBChatExtensionParameters: + required: + - authentication + - container_name + - database_name + - embedding_dependency + - fields_mapping + - index_name + type: object + properties: + authentication: + $ref: '#/components/schemas/onYourDataConnectionStringAuthenticationOptions' + top_n_documents: + type: integer + description: The configured top number of documents to feature for the configured query. + format: int32 + in_scope: + type: boolean + description: Whether queries should be restricted to use of indexed data. + strictness: + maximum: 5 + minimum: 1 + type: integer + description: The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer. + format: int32 + role_information: + type: string + description: Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit. + database_name: + type: string + description: The MongoDB vCore database name to use with Azure Cosmos DB. + container_name: + type: string + description: The name of the Azure Cosmos DB resource container. + index_name: + type: string + description: The MongoDB vCore index name to use with Azure Cosmos DB. + fields_mapping: + $ref: '#/components/schemas/azureCosmosDBFieldMappingOptions' + embedding_dependency: + oneOf: + - $ref: '#/components/schemas/onYourDataEndpointVectorizationSource' + - $ref: '#/components/schemas/onYourDataDeploymentNameVectorizationSource' + description: |- + Parameters to use when configuring Azure OpenAI On Your Data chat extensions when using Azure Cosmos DB for + MongoDB vCore. + azureCosmosDBFieldMappingOptions: + required: + - content_fields + - vector_fields + type: object + properties: + title_field: + type: string + description: The name of the index field to use as a title. + url_field: + type: string + description: The name of the index field to use as a URL. + filepath_field: + type: string + description: The name of the index field to use as a filepath. + content_fields: + type: array + description: The names of index fields that should be treated as content. + items: + type: string + content_fields_separator: + type: string + description: The separator pattern that content fields should use. + vector_fields: + type: array + description: The names of fields that represent vector data. + items: + type: string + description: Optional settings to control how fields are processed when using a configured Azure Cosmos DB resource. + onYourDataAuthenticationOptions: + required: + - type + type: object + properties: + type: + $ref: '#/components/schemas/onYourDataAuthenticationType' + description: The authentication options for Azure OpenAI On Your Data. + discriminator: + propertyName: type + mapping: + api_key: '#/components/schemas/onYourDataApiKeyAuthenticationOptions' + connection_string: '#/components/schemas/onYourDataConnectionStringAuthenticationOptions' + system_assigned_managed_identity: '#/components/schemas/onYourDataSystemAssignedManagedIdentityAuthenticationOptions' + user_assigned_managed_identity: '#/components/schemas/onYourDataUserAssignedManagedIdentityAuthenticationOptions' + onYourDataAuthenticationType: + type: string + description: The authentication types supported with Azure OpenAI On Your Data. + enum: + - api_key + - connection_string + - system_assigned_managed_identity + - user_assigned_managed_identity + x-ms-enum: + name: OnYourDataAuthenticationType + modelAsString: true + values: + - name: apiKey + value: api_key + description: Authentication via API key. + - name: connectionString + value: connection_string + description: Authentication via connection string. + - name: systemAssignedManagedIdentity + value: system_assigned_managed_identity + description: Authentication via system-assigned managed identity. + - name: userAssignedManagedIdentity + value: user_assigned_managed_identity + description: Authentication via user-assigned managed identity. + onYourDataApiKeyAuthenticationOptions: + required: + - key + description: The authentication options for Azure OpenAI On Your Data when using an API key. + allOf: + - $ref: '#/components/schemas/onYourDataAuthenticationOptions' + - properties: + key: + type: string + description: The API key to use for authentication. + x-ms-discriminator-value: api_key + onYourDataConnectionStringAuthenticationOptions: + required: + - connection_string + description: The authentication options for Azure OpenAI On Your Data when using a connection string. + allOf: + - $ref: '#/components/schemas/onYourDataAuthenticationOptions' + - properties: + connection_string: + type: string + description: The connection string to use for authentication. + x-ms-discriminator-value: connection_string + onYourDataSystemAssignedManagedIdentityAuthenticationOptions: + description: The authentication options for Azure OpenAI On Your Data when using a system-assigned managed identity. + allOf: + - $ref: '#/components/schemas/onYourDataAuthenticationOptions' + x-ms-discriminator-value: system_assigned_managed_identity + onYourDataUserAssignedManagedIdentityAuthenticationOptions: + required: + - managed_identity_resource_id + description: The authentication options for Azure OpenAI On Your Data when using a user-assigned managed identity. + allOf: + - $ref: '#/components/schemas/onYourDataAuthenticationOptions' + - properties: + managed_identity_resource_id: + type: string + description: The resource ID of the user-assigned managed identity to use for authentication. + x-ms-discriminator-value: user_assigned_managed_identity + onYourDataVectorizationSource: + required: + - type + type: object + properties: + type: + $ref: '#/components/schemas/onYourDataVectorizationSourceType' + description: An abstract representation of a vectorization source for Azure OpenAI On Your Data with vector search. + discriminator: + propertyName: type + mapping: + endpoint: '#/components/schemas/onYourDataEndpointVectorizationSource' + deployment_name: '#/components/schemas/onYourDataDeploymentNameVectorizationSource' + onYourDataVectorizationSourceType: + type: string + description: |- + Represents the available sources Azure OpenAI On Your Data can use to configure vectorization of data for use with + vector search. + enum: + - endpoint + - deployment_name + x-ms-enum: + name: OnYourDataVectorizationSourceType + modelAsString: true + values: + - name: endpoint + value: endpoint + description: Represents vectorization performed by public service calls to an Azure OpenAI embedding model. + - name: deploymentName + value: deployment_name + description: |- + Represents an Ada model deployment name to use. This model deployment must be in the same Azure OpenAI resource, but + On Your Data will use this model deployment via an internal call rather than a public one, which enables vector + search even in private networks. + onYourDataDeploymentNameVectorizationSource: + required: + - deployment_name + description: |- + The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based + on an internal embeddings model deployment name in the same Azure OpenAI resource. + allOf: + - $ref: '#/components/schemas/onYourDataVectorizationSource' + - properties: + deployment_name: + type: string + description: Specifies the name of the model deployment to use for vectorization. This model deployment must be in the same Azure OpenAI resource, but On Your Data will use this model deployment via an internal call rather than a public one, which enables vector search even in private networks. + x-ms-discriminator-value: deployment_name + onYourDataEndpointVectorizationSource: + required: + - authentication + - endpoint + description: |- + The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based + on a public Azure OpenAI endpoint call for embeddings. + allOf: + - $ref: '#/components/schemas/onYourDataVectorizationSource' + - properties: + authentication: + $ref: '#/components/schemas/onYourDataApiKeyAuthenticationOptions' + endpoint: + type: string + description: Specifies the endpoint to use for vectorization. This endpoint must be in the same Azure OpenAI resource, but On Your Data will use this endpoint via an internal call rather than a public one, which enables vector search even in private networks. + format: uri + x-ms-discriminator-value: endpoint + azureChatExtensionsMessageContext: + type: object + properties: + citations: + type: array + description: The data source retrieval result, used to generate the assistant message in the response. + items: + $ref: '#/components/schemas/citation' + x-ms-identifiers: [] + intent: + type: string + description: The detected intent from the chat history, used to pass to the next turn to carry over the context. + description: |2- + A representation of the additional context information available when Azure OpenAI chat extensions are involved + in the generation of a corresponding chat completions response. This context information is only populated when + using an Azure OpenAI request configured to use a matching extension. + citation: + required: + - content + type: object + properties: + content: + type: string + description: The content of the citation. + title: + type: string + description: The title of the citation. + url: + type: string + description: The URL of the citation. + filepath: + type: string + description: The file path of the citation. + chunk_id: + type: string + description: The chunk ID of the citation. + description: citation information for a chat completions response message. + chatCompletionMessageToolCall: + type: object + properties: + id: + type: string + description: The ID of the tool call. + type: + $ref: '#/components/schemas/toolCallType' + function: + type: object + description: The function that the model called. + properties: + name: + type: string + description: The name of the function to call. + arguments: + type: string + description: The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function. + required: + - name + - arguments + required: + - id + - type + - function + toolCallType: + type: string + enum: + - function + description: The type of the tool call, in this case `function`. + x-ms-enum: + name: ToolCallType + modelAsString: true + values: + - value: function + description: The tool call type is function. + chatCompletionRequestMessageTool: + allOf: + - $ref: '#/components/schemas/chatCompletionRequestMessage' + - type: object + nullable: true + properties: + tool_call_id: + type: string + description: Tool call that this message is responding to. + content: + type: string + description: The contents of the message. + nullable: true + required: + - tool_call_id + - content + chatCompletionRequestMessageFunction: + allOf: + - $ref: '#/components/schemas/chatCompletionRequestMessage' + - type: object + description: Deprecated. Message that represents a function. + nullable: true + properties: + role: + type: string + enum: + - function + description: The role of the messages author, in this case `function`. + name: + type: string + description: The contents of the message. + content: + type: string + description: The contents of the message. + nullable: true + required: + - function_call_id + - content + createChatCompletionResponse: + type: object + allOf: + - $ref: '#/components/schemas/chatCompletionsResponseCommon' + - properties: + prompt_filter_results: + $ref: '#/components/schemas/promptFilterResults' + choices: + type: array + items: + type: object + allOf: + - $ref: '#/components/schemas/chatCompletionChoiceCommon' + - properties: + message: + $ref: '#/components/schemas/chatCompletionResponseMessage' + content_filter_results: + $ref: '#/components/schemas/contentFilterChoiceResults' + logprobs: + $ref: '#/components/schemas/chatCompletionChoiceLogProbs' + required: + - id + - object + - created + - model + - choices + chatCompletionChoiceLogProbs: + description: Log probability information for the choice. + type: object + nullable: true + properties: + content: + description: A list of message content tokens with log probability information. + type: array + items: + $ref: '#/components/schemas/chatCompletionTokenLogprob' + nullable: true + required: + - content + chatCompletionTokenLogprob: + type: object + properties: + token: + description: The token. + type: string + logprob: + description: The log probability of this token. + type: number + bytes: + description: A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be `null` if there is no bytes representation for the token. + type: array + items: + type: integer + nullable: true + top_logprobs: + description: List of the most likely tokens and their log probability, at this token position. In rare cases, there may be fewer than the number of requested `top_logprobs` returned. + type: array + items: + type: object + properties: + token: + description: The token. + type: string + logprob: + description: The log probability of this token. + type: number + bytes: + description: A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be `null` if there is no bytes representation for the token. + type: array + items: + type: integer + nullable: true + required: + - token + - logprob + - bytes + required: + - token + - logprob + - bytes + - top_logprobs + + chatCompletionResponseMessage: + type: object + description: A chat completion message generated by the model. + properties: + role: + $ref: '#/components/schemas/chatCompletionResponseMessageRole' + content: + type: string + description: The contents of the message. + nullable: true + tool_calls: + type: array + description: The tool calls generated by the model, such as function calls. + items: + $ref: '#/components/schemas/chatCompletionMessageToolCall' + function_call: + $ref: '#/components/schemas/chatCompletionFunctionCall' + context: + $ref: '#/components/schemas/azureChatExtensionsMessageContext' + chatCompletionResponseMessageRole: + type: string + enum: + - assistant + description: The role of the author of the response message. + chatCompletionToolChoiceOption: + description: 'Controls which (if any) function is called by the model. `none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function. Specifying a particular function via `{"type": "function", "function": {"name": "my_function"}}` forces the model to call that function.' + oneOf: + - type: string + description: '`none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function.' + enum: + - none + - auto + - required + - $ref: '#/components/schemas/chatCompletionNamedToolChoice' + chatCompletionNamedToolChoice: + type: object + description: Specifies a tool the model should use. Use to force the model to call a specific function. + properties: + type: + type: string + enum: + - function + description: The type of the tool. Currently, only `function` is supported. + function: + type: object + properties: + name: + type: string + description: The name of the function to call. + required: + - name + chatCompletionFunctionCall: + type: object + description: Deprecated and replaced by `tool_calls`. The name and arguments of a function that should be called, as generated by the model. + properties: + name: + type: string + description: The name of the function to call. + arguments: + type: string + description: The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function. + required: + - name + - arguments + chatCompletionsResponseCommon: + type: object + properties: + id: + type: string + description: A unique identifier for the chat completion. + object: + $ref: '#/components/schemas/chatCompletionResponseObject' + created: + type: integer + format: unixtime + description: The Unix timestamp (in seconds) of when the chat completion was created. + model: + type: string + description: The model used for the chat completion. + usage: + $ref: '#/components/schemas/completionUsage' + system_fingerprint: + type: string + description: Can be used in conjunction with the `seed` request parameter to understand when backend changes have been made that might impact determinism. + required: + - id + - object + - created + - model + chatCompletionResponseObject: + type: string + description: The object type. + enum: + - chat.completion + x-ms-enum: + name: ChatCompletionResponseObject + modelAsString: true + values: + - value: chat.completion + description: The object type is chat completion. + completionUsage: + type: object + description: Usage statistics for the completion request. + properties: + prompt_tokens: + type: integer + description: Number of tokens in the prompt. + completion_tokens: + type: integer + description: Number of tokens in the generated completion. + total_tokens: + type: integer + description: Total number of tokens used in the request (prompt + completion). + required: + - prompt_tokens + - completion_tokens + - total_tokens + chatCompletionTool: + type: object + properties: + type: + $ref: '#/components/schemas/chatCompletionToolType' + function: + type: object + properties: + description: + type: string + description: A description of what the function does, used by the model to choose when and how to call the function. + name: + type: string + description: The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64. + parameters: + $ref: '#/components/schemas/chatCompletionFunctionParameters' + required: + - name + - parameters + required: + - type + - function + chatCompletionToolType: + type: string + enum: + - function + description: The type of the tool. Currently, only `function` is supported. + x-ms-enum: + name: ChatCompletionToolType + modelAsString: true + values: + - value: function + description: The tool type is function. + chatCompletionChoiceCommon: + type: object + properties: + index: + type: integer + finish_reason: + type: string + createTranslationRequest: + type: object + description: Translation request. + properties: + file: + type: string + description: The audio file to translate. + format: binary + prompt: + type: string + description: An optional text to guide the model's style or continue a previous audio segment. The prompt should be in English. + response_format: + $ref: '#/components/schemas/audioResponseFormat' + temperature: + type: number + default: 0 + description: The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit. + required: + - file + audioResponse: + description: Translation or transcription response when response_format was json + type: object + properties: + text: + type: string + description: Translated or transcribed text. + required: + - text + audioVerboseResponse: + description: Translation or transcription response when response_format was verbose_json + type: object + allOf: + - $ref: '#/components/schemas/audioResponse' + - properties: + task: + type: string + description: Type of audio task. + enum: + - transcribe + - translate + x-ms-enum: + modelAsString: true + language: + type: string + description: Language. + duration: + type: number + description: Duration. + segments: + type: array + items: + $ref: '#/components/schemas/audioSegment' + required: + - text + audioResponseFormat: + title: AudioResponseFormat + description: Defines the format of the output. + enum: + - json + - text + - srt + - verbose_json + - vtt + type: string + x-ms-enum: + modelAsString: true + createTranscriptionRequest: + type: object + description: Transcription request. + properties: + file: + type: string + description: The audio file object to transcribe. + format: binary + prompt: + type: string + description: An optional text to guide the model's style or continue a previous audio segment. The prompt should match the audio language. + response_format: + $ref: '#/components/schemas/audioResponseFormat' + temperature: + type: number + default: 0 + description: The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit. + language: + type: string + description: The language of the input audio. Supplying the input language in ISO-639-1 format will improve accuracy and latency. + required: + - file + audioSegment: + type: object + description: Transcription or translation segment. + properties: + id: + type: integer + description: Segment identifier. + seek: + type: number + description: Offset of the segment. + start: + type: number + description: Segment start offset. + end: + type: number + description: Segment end offset. + text: + type: string + description: Segment text. + tokens: + type: array + items: + type: number + nullable: false + description: Tokens of the text. + temperature: + type: number + description: Temperature. + avg_logprob: + type: number + description: Average log probability. + compression_ratio: + type: number + description: Compression ratio. + no_speech_prob: + type: number + description: Probability of 'no speech'. + imageQuality: + description: The quality of the image that will be generated. + type: string + enum: + - standard + - hd + default: standard + x-ms-enum: + name: Quality + modelAsString: true + values: + - value: standard + description: Standard quality creates images with standard quality. + name: Standard + - value: hd + description: HD quality creates images with finer details and greater consistency across the image. + name: HD + imagesResponseFormat: + description: The format in which the generated images are returned. + type: string + enum: + - url + - b64_json + default: url + x-ms-enum: + name: ImagesResponseFormat + modelAsString: true + values: + - value: url + description: The URL that provides temporary access to download the generated images. + name: Url + - value: b64_json + description: The generated images are returned as base64 encoded string. + name: Base64Json + imageSize: + description: The size of the generated images. + type: string + enum: + - 1792x1024 + - 1024x1792 + - 1024x1024 + default: 1024x1024 + x-ms-enum: + name: Size + modelAsString: true + values: + - value: 1792x1024 + description: The desired size of the generated image is 1792x1024 pixels. + name: Size1792x1024 + - value: 1024x1792 + description: The desired size of the generated image is 1024x1792 pixels. + name: Size1024x1792 + - value: 1024x1024 + description: The desired size of the generated image is 1024x1024 pixels. + name: Size1024x1024 + imageStyle: + description: The style of the generated images. + type: string + enum: + - vivid + - natural + default: vivid + x-ms-enum: + name: Style + modelAsString: true + values: + - value: vivid + description: Vivid creates images that are hyper-realistic and dramatic. + name: Vivid + - value: natural + description: Natural creates images that are more natural and less hyper-realistic. + name: Natural + imageGenerationsRequest: + type: object + properties: + prompt: + description: A text description of the desired image(s). The maximum length is 4000 characters. + type: string + format: string + example: a corgi in a field + minLength: 1 + 'n': + description: The number of images to generate. + type: integer + minimum: 1 + maximum: 1 + default: 1 + size: + $ref: '#/components/schemas/imageSize' + response_format: + $ref: '#/components/schemas/imagesResponseFormat' + user: + description: A unique identifier representing your end-user, which can help to monitor and detect abuse. + type: string + format: string + example: user123456 + quality: + $ref: '#/components/schemas/imageQuality' + style: + $ref: '#/components/schemas/imageStyle' + required: + - prompt + generateImagesResponse: + type: object + properties: + created: + type: integer + format: unixtime + description: The unix timestamp when the operation was created. + example: '1676540381' + data: + type: array + description: The result data of the operation, if successful + items: + $ref: '#/components/schemas/imageResult' + required: + - created + - data + imageResult: + type: object + description: The image url or encoded image if successful, and an error otherwise. + properties: + url: + type: string + description: The image url. + example: https://www.contoso.com + b64_json: + type: string + description: The base64 encoded image + content_filter_results: + $ref: '#/components/schemas/dalleContentFilterResults' + revised_prompt: + type: string + description: The prompt that was used to generate the image, if there was any revision to the prompt. + prompt_filter_results: + $ref: '#/components/schemas/dalleFilterResults' + securitySchemes: + bearer: + type: oauth2 + flows: + implicit: + authorizationUrl: https://login.microsoftonline.com/common/oauth2/v2.0/authorize + scopes: {} + x-tokenInfoFunc: api.middleware.auth.bearer_auth + x-scopeValidateFunc: api.middleware.auth.validate_scopes + apiKey: + type: apiKey + name: api-key + in: header From fb8cd14824741eaaad696513e945913e659da396 Mon Sep 17 00:00:00 2001 From: ChenxiJiang333 <119990644+ChenxiJiang333@users.noreply.github.com> Date: Mon, 1 Jul 2024 12:41:25 +0800 Subject: [PATCH 37/52] Update readme.python.md (#29630) * Update readme.python.md * Update readme.python.md --- .../network/resource-manager/readme.python.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/specification/network/resource-manager/readme.python.md b/specification/network/resource-manager/readme.python.md index f458af526457..99f1340e94a7 100644 --- a/specification/network/resource-manager/readme.python.md +++ b/specification/network/resource-manager/readme.python.md @@ -18,9 +18,10 @@ Generate all API versions currently shipped for this package ```yaml $(python) multiapi: true -default-api-version: "2023-11-01" +default-api-version: "2024-01-01" clear-output-folder: true batch: + - tag: package-2024-01 - tag: package-2023-11 - tag: package-2023-09 - tag: package-2023-06 @@ -59,6 +60,16 @@ perform-load: false clear-output-folder: false ``` +### Tag: package-2024-01 and python + +These settings apply only when `--tag=package-2024-01 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2024-01' +namespace: azure.mgmt.network.v2024_01_01 +output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2024_01_01 +``` + ### Tag: package-2023-11 and python These settings apply only when `--tag=package-2023-11 --python` is specified on the command line. From abad0096677005817d2c19df2364663e5583c8fc Mon Sep 17 00:00:00 2001 From: Xiaofei Cao <92354331+XiaofeiCao@users.noreply.github.com> Date: Mon, 1 Jul 2024 15:09:38 +0800 Subject: [PATCH 38/52] MongoCluster, fix lro template PUT with 202 (#29642) * fix lro template * format --- .../DocumentDB.MongoCluster.Management/FirewallRule.tsp | 5 +++-- .../PrivateEndpointConnection.tsp | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/FirewallRule.tsp b/specification/mongocluster/DocumentDB.MongoCluster.Management/FirewallRule.tsp index 3ccc13b563ad..924d19397e63 100644 --- a/specification/mongocluster/DocumentDB.MongoCluster.Management/FirewallRule.tsp +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/FirewallRule.tsp @@ -42,10 +42,11 @@ interface FirewallRules { @Azure.Core.useFinalStateVia("azure-async-operation") createOrUpdate is ArmResourceCreateOrReplaceAsync< FirewallRule, - Response = ArmAcceptedLroResponse<"Resource operation accepted."> | ArmResourceUpdatedResponse | ArmResourceCreatedResponse< + Response = ArmResourceUpdatedResponse | ArmResourceCreatedResponse< FirewallRule, LroHeaders = {} - > + > | ArmAcceptedLroResponse & + Azure.Core.Foundations.RetryAfterHeader> >; /** Deletes a mongo cluster firewall rule. */ delete is ArmResourceDeleteWithoutOkAsync; diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/PrivateEndpointConnection.tsp b/specification/mongocluster/DocumentDB.MongoCluster.Management/PrivateEndpointConnection.tsp index e7656b6c355c..68df9614f342 100644 --- a/specification/mongocluster/DocumentDB.MongoCluster.Management/PrivateEndpointConnection.tsp +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/PrivateEndpointConnection.tsp @@ -22,7 +22,8 @@ interface PrivateEndpointConnections { @Azure.Core.useFinalStateVia("azure-async-operation") create is ArmResourceCreateOrReplaceAsync< PrivateEndpointConnectionResource, - Response = ArmAcceptedLroResponse<"Resource operation accepted."> | ArmResourceUpdatedResponse | ArmResourceCreatedResponse< + Response = ArmAcceptedLroResponse & + Azure.Core.Foundations.RetryAfterHeader> | ArmResourceUpdatedResponse | ArmResourceCreatedResponse< PrivateEndpointConnectionResource, LroHeaders = {} > From be978e57137bfd799e350575c0fdd53511f0e4a8 Mon Sep 17 00:00:00 2001 From: TalFrankel <73380649+TalFrankel@users.noreply.github.com> Date: Mon, 1 Jul 2024 22:47:55 +0300 Subject: [PATCH 39/52] Remove flatten attribute to fix conflict for CLI generation tool (#29276) * Remove flatten attribute to fix conflict for CLI generation tool * Create sdk-suppressions.yaml --- .../defenderForStorageSettings.json | 4 ---- .../security/resource-manager/sdk-suppressions.yaml | 12 ++++++++++++ 2 files changed, 12 insertions(+), 4 deletions(-) create mode 100644 specification/security/resource-manager/sdk-suppressions.yaml diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/defenderForStorageSettings.json b/specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/defenderForStorageSettings.json index c10845476167..bb0268c2c42f 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/defenderForStorageSettings.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/defenderForStorageSettings.json @@ -130,7 +130,6 @@ ], "properties": { "properties": { - "x-ms-client-flatten": true, "$ref": "#/definitions/DefenderForStorageSettingProperties" } }, @@ -144,11 +143,9 @@ "description": "Indicates whether Defender for Storage is enabled on this storage account." }, "malwareScanning": { - "x-ms-client-flatten": true, "$ref": "#/definitions/MalwareScanningProperties" }, "sensitiveDataDiscovery": { - "x-ms-client-flatten": true, "$ref": "#/definitions/SensitiveDataDiscoveryProperties" }, "overrideSubscriptionLevelSettings": { @@ -162,7 +159,6 @@ "type": "object", "properties": { "onUpload": { - "x-ms-client-flatten": true, "$ref": "#/definitions/OnUploadProperties" }, "scanResultsEventGridTopicResourceId": { diff --git a/specification/security/resource-manager/sdk-suppressions.yaml b/specification/security/resource-manager/sdk-suppressions.yaml new file mode 100644 index 000000000000..896fc8cc0bf4 --- /dev/null +++ b/specification/security/resource-manager/sdk-suppressions.yaml @@ -0,0 +1,12 @@ +suppressions: + azure-sdk-for-python: + - package: azure-mgmt-security + breaking-changes: + - Model DefenderForStorageSetting no longer has parameter cap_gb_per_month + - Model DefenderForStorageSetting no longer has parameter is_enabled_properties_is_enabled + - Model DefenderForStorageSetting no longer has parameter is_enabled_properties_malware_scanning_on_upload_is_enabled + - Model DefenderForStorageSetting no longer has parameter is_enabled_properties_sensitive_data_discovery_is_enabled + - Model DefenderForStorageSetting no longer has parameter operation_status_properties_malware_scanning_operation_status + - Model DefenderForStorageSetting no longer has parameter operation_status_properties_sensitive_data_discovery_operation_status + - Model DefenderForStorageSetting no longer has parameter override_subscription_level_settings + - Model DefenderForStorageSetting no longer has parameter scan_results_event_grid_topic_resource_id From 5700885250d8f685a17293e930d98d1c1d72f401 Mon Sep 17 00:00:00 2001 From: Wei Wei Date: Mon, 1 Jul 2024 21:37:12 +0000 Subject: [PATCH 40/52] update code owner for storage/resource-manager (#29645) --- .github/CODEOWNERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index ac4c89231ee0..a151fec4444e 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -230,7 +230,7 @@ /specification/sql/ @jamestao @ericshape @jeremyfrosti # PRLabel: %Storage -/specification/storage/ @jasonyang-msft +/specification/storage/resource-manager/ @blueww @yifanz7 /specification/storage/data-plane/ @seanmcc-msft @Azure/api-stewardship-board # PRLabel: %Import Export From 87a08b955c257c773a3bd42553c718d4b1092955 Mon Sep 17 00:00:00 2001 From: Mike Harder Date: Mon, 1 Jul 2024 18:25:03 -0700 Subject: [PATCH 41/52] [TypeSpecRequirement] Add tests (#29639) --- .../workflows/typespec-requirement-test.yaml | 23 + eng/scripts/Logging-Functions.ps1 | 8 +- eng/scripts/TypeSpec-Requirement.ps1 | 25 +- eng/tools/package.json | 1 + eng/tools/typespec-requirement/package.json | 21 + .../test/specification/empty/placeholder.txt | 1 + .../2024-01-01-preview/hand-written.json | 2 + .../2024-01-01-preview/no-tspconfig.json | 9 + .../2024-01-01-preview/parse-error.json | 1 + .../2024-01-01-preview/suppression.json | 2 + .../suppression/suppressions.yaml | 3 + .../tspconfig.yaml | 1 + .../preview/2024-01-01-preview/valid.json | 9 + .../test/typespec-requirement.test.ts | 83 ++ eng/tools/typespec-requirement/tsconfig.json | 6 + eng/tools/typespec-requirement/vite.config.ts | 8 + package-lock.json | 946 +++++++++++------- 17 files changed, 754 insertions(+), 395 deletions(-) create mode 100644 .github/workflows/typespec-requirement-test.yaml create mode 100644 eng/tools/typespec-requirement/package.json create mode 100644 eng/tools/typespec-requirement/test/specification/empty/placeholder.txt create mode 100644 eng/tools/typespec-requirement/test/specification/hand-written/resource-manager/Microsoft.HandWritten/preview/2024-01-01-preview/hand-written.json create mode 100644 eng/tools/typespec-requirement/test/specification/no-tspconfig/resource-manager/Microsoft.NoTspConfig/preview/2024-01-01-preview/no-tspconfig.json create mode 100644 eng/tools/typespec-requirement/test/specification/parse-error/resource-manager/Microsoft.ParseError/preview/2024-01-01-preview/parse-error.json create mode 100644 eng/tools/typespec-requirement/test/specification/suppression/resource-manager/Microsoft.Suppression/preview/2024-01-01-preview/suppression.json create mode 100644 eng/tools/typespec-requirement/test/specification/suppression/suppressions.yaml create mode 100644 eng/tools/typespec-requirement/test/specification/typespec-generated/Microsoft.TypeSpecGenerated.Management/tspconfig.yaml create mode 100644 eng/tools/typespec-requirement/test/specification/typespec-generated/resource-manager/Microsoft.TypeSpecGenerated/preview/2024-01-01-preview/valid.json create mode 100644 eng/tools/typespec-requirement/test/typespec-requirement.test.ts create mode 100644 eng/tools/typespec-requirement/tsconfig.json create mode 100644 eng/tools/typespec-requirement/vite.config.ts diff --git a/.github/workflows/typespec-requirement-test.yaml b/.github/workflows/typespec-requirement-test.yaml new file mode 100644 index 000000000000..e90bc29c34b2 --- /dev/null +++ b/.github/workflows/typespec-requirement-test.yaml @@ -0,0 +1,23 @@ +name: TypeSpec Requirement - Test + +on: + push: + branches: + - main + pull_request: + paths: + - package-lock.json + - package.json + - tsconfig.json + - .github/workflows/_reusable-eng-tools-test.yaml + - .github/workflows/typespec-requirement-test.yaml + - eng/scripts/** + - eng/tools/package.json + - eng/tools/tsconfig.json + - eng/tools/typespec-requirement/** + +jobs: + typespec-requirement: + uses: ./.github/workflows/_reusable-eng-tools-test.yaml + with: + package: typespec-requirement diff --git a/eng/scripts/Logging-Functions.ps1 b/eng/scripts/Logging-Functions.ps1 index 77ce43f7ef07..2f4522ac2342 100644 --- a/eng/scripts/Logging-Functions.ps1 +++ b/eng/scripts/Logging-Functions.ps1 @@ -15,7 +15,7 @@ function LogWarning { Write-Host ("##vso[task.LogIssue type=warning;]$args" -replace "`n", "%0D%0A") } elseif (Test-SupportsGitHubLogging) { - Write-Host ("::warning::$args" -replace "`n", "%0D%0A") + Write-Warning ("::warning::$args" -replace "`n", "%0D%0A") } else { Write-Warning "$args" @@ -28,7 +28,7 @@ function LogErrorForFile($file, $errorString) Write-Host ("##vso[task.logissue type=error;sourcepath=$file;linenumber=1;columnnumber=1;]$errorString" -replace "`n", "%0D%0A") } elseif (Test-SupportsGitHubLogging) { - Write-Host ("::error file=$file,line=1,col=1::$errorString" -replace "`n", "%0D%0A") + Write-Error ("::error file=$file,line=1,col=1::$errorString" -replace "`n", "%0D%0A") } else { Write-Error "[Error in file $file]$errorString" @@ -39,7 +39,7 @@ function LogError { Write-Host ("##vso[task.LogIssue type=error;]$args" -replace "`n", "%0D%0A") } elseif (Test-SupportsGitHubLogging) { - Write-Host ("::error::$args" -replace "`n", "%0D%0A") + Write-Error ("::error::$args" -replace "`n", "%0D%0A") } else { Write-Error "$args" @@ -51,7 +51,7 @@ function LogDebug { Write-Host "[debug]$args" } elseif (Test-SupportsGitHubLogging) { - Write-Host "::debug::$args" + Write-Debug "::debug::$args" } else { Write-Debug "$args" diff --git a/eng/scripts/TypeSpec-Requirement.ps1 b/eng/scripts/TypeSpec-Requirement.ps1 index 887ce0965485..b6c38af4a4d1 100644 --- a/eng/scripts/TypeSpec-Requirement.ps1 +++ b/eng/scripts/TypeSpec-Requirement.ps1 @@ -6,7 +6,11 @@ param ( [string] $TargetCommitish = "HEAD", [Parameter(Position = 2)] [string] $SpecType = "data-plane|resource-manager", - [string] $CheckAllUnder + [string] $CheckAllUnder, + # Reserved for testing. Call using: + # $ pwsh -Command '... -_ResponseCache @{"url"=200}' + [Parameter(DontShow)] + [hashtable] $_ResponseCache = @{} ) Set-StrictMode -Version 3 @@ -59,7 +63,7 @@ $repoPath = Resolve-Path "$PSScriptRoot/../.." $pathsWithErrors = @() $filesToCheck = $CheckAllUnder ? - (Get-ChildItem -Path $CheckAllUnder -Recurse -File | Resolve-Path -Relative | ForEach-Object { $_ -replace '\\', '/' }) : + (Get-ChildItem -Path $CheckAllUnder -Recurse -File | Resolve-Path -Relative -RelativeBasePath $repoPath | ForEach-Object { $_ -replace '\\', '/' }) : (Get-ChangedSwaggerFiles (Get-ChangedFiles $BaseCommitish $TargetCommitish)) $filesToCheck = $filesToCheck.Where({ @@ -72,7 +76,7 @@ if (!$filesToCheck) { } else { # Cache responses to GitHub web requests, for efficiency and to prevent rate limiting - $responseCache = @{} + $responseCache = $_ResponseCache # - Forward slashes on both Linux and Windows # - May be nested 4 or 5 levels deep, perhaps even deeper @@ -107,16 +111,15 @@ else { if ($null -ne ${jsonContent}?["info"]?["x-typespec-generated"]) { LogInfo " OpenAPI was generated from TypeSpec (contains '/info/x-typespec-generated')" - if ($file -match "specification/(?[^/]+)/") { - $rpFolder = $Matches["rpFolder"]; - $tspConfigs = @(Get-ChildItem -Path (Join-Path $repoPath "specification" $rpFolder) -Recurse -File - | Where-Object { $_.Name -eq "tspconfig.yaml" }) + if ($file -match "^.*specification/[^/]+/") { + $rpFolder = $Matches[0]; + $tspConfigs = @(Get-ChildItem -Path $rpFolder -Recurse -File | Where-Object { $_.Name -eq "tspconfig.yaml" }) if ($tspConfigs) { - LogInfo " Folder 'specification/$rpFolder' contains $($tspConfigs.Count) file(s) named 'tspconfig.yaml'" + LogInfo " Folder '$rpFolder' contains $($tspConfigs.Count) file(s) named 'tspconfig.yaml'" } else { - LogError ("OpenAPI was generated from TypeSpec, but folder 'specification/$rpFolder' contains no files named 'tspconfig.yaml'." ` + LogError ("OpenAPI was generated from TypeSpec, but folder '$rpFolder' contains no files named 'tspconfig.yaml'." ` + " The TypeSpec used to generate OpenAPI must be added to this folder.") LogJobFailure exit 1 @@ -176,12 +179,12 @@ else { if ($responseStatus -eq 200) { LogInfo " Branch 'main' contains path '$servicePath/stable', so spec already exists and is not required to use TypeSpec" } - elseif ($response.StatusCode -eq 404) { + elseif ($responseStatus -eq 404) { LogInfo " Branch 'main' does not contain path '$servicePath/stable', so spec is new and must use TypeSpec" $pathsWithErrors += $file } else { - LogError "Unexpected response from ${logUrlToStableFolder}: ${response.StatusCode}" + LogError "Unexpected response from ${logUrlToStableFolder}: ${responseStatus}" LogJobFailure exit 1 } diff --git a/eng/tools/package.json b/eng/tools/package.json index fc6133b9cce7..1c69ffb902f1 100644 --- a/eng/tools/package.json +++ b/eng/tools/package.json @@ -2,6 +2,7 @@ "name": "azure-rest-api-specs-eng-tools", "devDependencies": { "@azure-tools/suppressions": "file:suppressions", + "@azure-tools/typespec-requirement": "file:typespec-requirement", "@azure-tools/typespec-validation": "file:typespec-validation" }, "private": true diff --git a/eng/tools/typespec-requirement/package.json b/eng/tools/typespec-requirement/package.json new file mode 100644 index 000000000000..e82d0d39da50 --- /dev/null +++ b/eng/tools/typespec-requirement/package.json @@ -0,0 +1,21 @@ +{ + "name": "@azure-tools/typespec-requirement", + "private": true, + "type": "module", + "devDependencies": { + "@types/node": "^18.19.31", + "@vitest/coverage-v8": "^1.6.0", + "execa": "^9.3.0", + "typescript": "~5.4.5", + "vitest": "^1.6.0" + }, + "scripts": { + "build": "tsc", + "postinstall": "npm run build", + "test": "vitest", + "test:ci": "vitest run --coverage --reporter=verbose" + }, + "engines": { + "node": ">= 18.0.0" + } +} diff --git a/eng/tools/typespec-requirement/test/specification/empty/placeholder.txt b/eng/tools/typespec-requirement/test/specification/empty/placeholder.txt new file mode 100644 index 000000000000..8318c86b357b --- /dev/null +++ b/eng/tools/typespec-requirement/test/specification/empty/placeholder.txt @@ -0,0 +1 @@ +Test \ No newline at end of file diff --git a/eng/tools/typespec-requirement/test/specification/hand-written/resource-manager/Microsoft.HandWritten/preview/2024-01-01-preview/hand-written.json b/eng/tools/typespec-requirement/test/specification/hand-written/resource-manager/Microsoft.HandWritten/preview/2024-01-01-preview/hand-written.json new file mode 100644 index 000000000000..2c63c0851048 --- /dev/null +++ b/eng/tools/typespec-requirement/test/specification/hand-written/resource-manager/Microsoft.HandWritten/preview/2024-01-01-preview/hand-written.json @@ -0,0 +1,2 @@ +{ +} diff --git a/eng/tools/typespec-requirement/test/specification/no-tspconfig/resource-manager/Microsoft.NoTspConfig/preview/2024-01-01-preview/no-tspconfig.json b/eng/tools/typespec-requirement/test/specification/no-tspconfig/resource-manager/Microsoft.NoTspConfig/preview/2024-01-01-preview/no-tspconfig.json new file mode 100644 index 000000000000..16669a7232ea --- /dev/null +++ b/eng/tools/typespec-requirement/test/specification/no-tspconfig/resource-manager/Microsoft.NoTspConfig/preview/2024-01-01-preview/no-tspconfig.json @@ -0,0 +1,9 @@ +{ + "info": { + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + } +} diff --git a/eng/tools/typespec-requirement/test/specification/parse-error/resource-manager/Microsoft.ParseError/preview/2024-01-01-preview/parse-error.json b/eng/tools/typespec-requirement/test/specification/parse-error/resource-manager/Microsoft.ParseError/preview/2024-01-01-preview/parse-error.json new file mode 100644 index 000000000000..98232c64fce9 --- /dev/null +++ b/eng/tools/typespec-requirement/test/specification/parse-error/resource-manager/Microsoft.ParseError/preview/2024-01-01-preview/parse-error.json @@ -0,0 +1 @@ +{ diff --git a/eng/tools/typespec-requirement/test/specification/suppression/resource-manager/Microsoft.Suppression/preview/2024-01-01-preview/suppression.json b/eng/tools/typespec-requirement/test/specification/suppression/resource-manager/Microsoft.Suppression/preview/2024-01-01-preview/suppression.json new file mode 100644 index 000000000000..2c63c0851048 --- /dev/null +++ b/eng/tools/typespec-requirement/test/specification/suppression/resource-manager/Microsoft.Suppression/preview/2024-01-01-preview/suppression.json @@ -0,0 +1,2 @@ +{ +} diff --git a/eng/tools/typespec-requirement/test/specification/suppression/suppressions.yaml b/eng/tools/typespec-requirement/test/specification/suppression/suppressions.yaml new file mode 100644 index 000000000000..13ba9f2a355f --- /dev/null +++ b/eng/tools/typespec-requirement/test/specification/suppression/suppressions.yaml @@ -0,0 +1,3 @@ +- tool: TypeSpecRequirement + path: ./resource-manager/Microsoft.Suppression/preview/2024-01-01-preview/*.json + reason: Test diff --git a/eng/tools/typespec-requirement/test/specification/typespec-generated/Microsoft.TypeSpecGenerated.Management/tspconfig.yaml b/eng/tools/typespec-requirement/test/specification/typespec-generated/Microsoft.TypeSpecGenerated.Management/tspconfig.yaml new file mode 100644 index 000000000000..8ae056963b8b --- /dev/null +++ b/eng/tools/typespec-requirement/test/specification/typespec-generated/Microsoft.TypeSpecGenerated.Management/tspconfig.yaml @@ -0,0 +1 @@ +# Test diff --git a/eng/tools/typespec-requirement/test/specification/typespec-generated/resource-manager/Microsoft.TypeSpecGenerated/preview/2024-01-01-preview/valid.json b/eng/tools/typespec-requirement/test/specification/typespec-generated/resource-manager/Microsoft.TypeSpecGenerated/preview/2024-01-01-preview/valid.json new file mode 100644 index 000000000000..16669a7232ea --- /dev/null +++ b/eng/tools/typespec-requirement/test/specification/typespec-generated/resource-manager/Microsoft.TypeSpecGenerated/preview/2024-01-01-preview/valid.json @@ -0,0 +1,9 @@ +{ + "info": { + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + } +} diff --git a/eng/tools/typespec-requirement/test/typespec-requirement.test.ts b/eng/tools/typespec-requirement/test/typespec-requirement.test.ts new file mode 100644 index 000000000000..5e8daa9712b4 --- /dev/null +++ b/eng/tools/typespec-requirement/test/typespec-requirement.test.ts @@ -0,0 +1,83 @@ +import { execa } from 'execa'; +import { join } from 'path'; +import { test } from 'vitest'; + +async function checkAllUnder(path: string, responseCache?: string) { + const repoRoot = join(__dirname, '..', '..', '..', '..'); + const script = join('eng', 'scripts', 'TypeSpec-Requirement.ps1'); + + let command = `${script} -CheckAllUnder ${join(__dirname, path)}`; + if (responseCache) { + command += ` -_ResponseCache ${responseCache}`; + } + + return await execa("pwsh", ["-Command", command], { cwd: repoRoot, reject: false }); +} + +test.concurrent("No files to check", async ({ expect }) => { + const { stdout, exitCode } = await checkAllUnder("specification/empty"); + + expect(stdout).toMatchInlineSnapshot(`"No OpenAPI files found to check"`); + expect(exitCode).toBe(0); +}); + +test.concurrent("Suppression", async ({ expect }) => { + const { stdout, exitCode } = await checkAllUnder("specification/suppression"); + + expect(stdout).toContain("Suppressed"); + expect(exitCode).toBe(0); +}); + +test.concurrent("Parse error", async ({ expect }) => { + const { stdout, exitCode } = await checkAllUnder("specification/parse-error"); + + expect(stdout).toContain("cannot be parsed as JSON"); + expect(exitCode).toBe(1); +}); + +test.concurrent("No tspconfig.yaml", async ({ expect }) => { + const { stderr, exitCode } = await checkAllUnder("specification/no-tspconfig"); + + expect(stderr).toContain("no files named 'tspconfig.yaml'"); + expect(exitCode).toBe(1); +}); + +test.concurrent("Generated from TypeSpec", async ({ expect }) => { + const { stdout, exitCode } = await checkAllUnder("specification/typespec-generated"); + + expect(stdout).toContain("was generated from TypeSpec"); + expect(exitCode).toBe(0); +}); + +test.concurrent("Hand-written, exists in main", async ({ expect }) => { + const { stdout, exitCode } = await checkAllUnder( + "specification/hand-written", + '@{"https://github.com/Azure/azure-rest-api-specs/tree/main/specification/hand-written/resource-manager/Microsoft.HandWritten/stable"=200}' + ); + + expect(stdout).toContain("was not generated from TypeSpec"); + expect(stdout).toContain("'main' contains path"); + expect(exitCode).toBe(0); +}); + +test.concurrent("Hand-written, does not exist in main", async ({ expect }) => { + const { stdout, exitCode } = await checkAllUnder( + "specification/hand-written", + '@{"https://github.com/Azure/azure-rest-api-specs/tree/main/specification/hand-written/resource-manager/Microsoft.HandWritten/stable"=404}' + ); + + expect(stdout).toContain("was not generated from TypeSpec"); + expect(stdout).toContain("'main' does not contain path"); + expect(exitCode).toBe(1); +}); + +test.concurrent("Hand-written, unexpected response checking main", async ({ expect }) => { + const { stdout, stderr, exitCode } = await checkAllUnder( + "specification/hand-written", + '@{"https://github.com/Azure/azure-rest-api-specs/tree/main/specification/hand-written/resource-manager/Microsoft.HandWritten/stable"=519}' + ); + + expect(stdout).toContain("was not generated from TypeSpec"); + expect(stderr).toContain("Unexpected response"); + expect(exitCode).toBe(1); +}); diff --git a/eng/tools/typespec-requirement/tsconfig.json b/eng/tools/typespec-requirement/tsconfig.json new file mode 100644 index 000000000000..ec6d6640928a --- /dev/null +++ b/eng/tools/typespec-requirement/tsconfig.json @@ -0,0 +1,6 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "./dist", + } +} diff --git a/eng/tools/typespec-requirement/vite.config.ts b/eng/tools/typespec-requirement/vite.config.ts new file mode 100644 index 000000000000..8b6908dc0a16 --- /dev/null +++ b/eng/tools/typespec-requirement/vite.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'vite' + +export default defineConfig({ + test: { + // Default timeout of 5 seconds is too low + testTimeout: 20000 + } +}) diff --git a/package-lock.json b/package-lock.json index cf58c9a3a61b..2ef4d7683924 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,13 +31,14 @@ "dev": true, "devDependencies": { "@azure-tools/suppressions": "file:suppressions", + "@azure-tools/typespec-requirement": "file:typespec-requirement", "@azure-tools/typespec-validation": "file:typespec-validation" } }, "eng/tools/node_modules/@types/node": { - "version": "18.19.33", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.33.tgz", - "integrity": "sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A==", + "version": "18.19.39", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.39.tgz", + "integrity": "sha512-nPwTRDKUctxw3di5b4TfT3I0sWDiWoPQCZjXhvdkINntwr8lcoVCKsTgnXeRubKIlfnV+eN/HYk6Jb40tbcEAQ==", "dev": true, "dependencies": { "undici-types": "~5.26.4" @@ -79,10 +80,43 @@ "balanced-match": "^1.0.0" } }, + "eng/tools/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "eng/tools/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "engines": { + "node": ">=16.17.0" + } + }, + "eng/tools/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "eng/tools/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -94,13 +128,25 @@ "url": "https://github.com/sponsors/isaacs" } }, + "eng/tools/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "eng/tools/node_modules/vite": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.11.tgz", - "integrity": "sha512-HndV31LWW05i1BLPMUCE1B9E9GFbOu1MbenhS58FuK6owSO5qHm7GiCotrNY1YE5rMeQSFBGmT5ZaLEjFizgiQ==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.2.tgz", + "integrity": "sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA==", "dev": true, "dependencies": { - "esbuild": "^0.20.1", + "esbuild": "^0.21.3", "postcss": "^8.4.38", "rollup": "^4.13.0" }, @@ -214,6 +260,29 @@ } } }, + "eng/tools/node_modules/vitest/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, "eng/tools/suppressions": { "name": "@azure-tools/suppressions", "dev": true, @@ -237,6 +306,21 @@ "node": ">= 18.0.0" } }, + "eng/tools/typespec-requirement": { + "name": "@azure-tools/typespec-requirement", + "dev": true, + "hasInstallScript": true, + "devDependencies": { + "@types/node": "^18.19.31", + "@vitest/coverage-v8": "^1.6.0", + "execa": "^9.3.0", + "typescript": "~5.4.5", + "vitest": "^1.6.0" + }, + "engines": { + "node": ">= 18.0.0" + } + }, "eng/tools/typespec-validation": { "name": "@azure-tools/typespec-validation", "dev": true, @@ -517,6 +601,10 @@ "@typespec/versioning": "~0.57.0" } }, + "node_modules/@azure-tools/typespec-requirement": { + "resolved": "eng/tools/typespec-requirement", + "link": true + }, "node_modules/@azure-tools/typespec-validation": { "resolved": "eng/tools/typespec-validation", "link": true @@ -646,13 +734,13 @@ } }, "node_modules/@azure/core-util": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.9.0.tgz", - "integrity": "sha512-AfalUQ1ZppaKuxPPMsFEUdX6GZPB3d9paR9d/TTL7Ow2De8cJaC7ibi7kWVlFAVPCYo31OcnGymc0R89DX8Oaw==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.7.0.tgz", + "integrity": "sha512-Zq2i3QO6k9DA8vnm29mYM4G8IE9u1mhF1GUabVEqPNX8Lj833gdxQ2NAFxt2BZsfAL+e9cT8SyVN7dFVJ/Hf0g==", "dev": true, "dependencies": { "@azure/abort-controller": "^2.0.0", - "tslib": "^2.6.2" + "tslib": "^2.2.0" }, "engines": { "node": ">=18.0.0" @@ -671,15 +759,15 @@ } }, "node_modules/@azure/logger": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.1.2.tgz", - "integrity": "sha512-l170uE7bsKpIU6B/giRc9i4NI0Mj+tANMMMxf7Zi/5cKzEqPayP7+X1WPrG7e+91JgY8N+7K7nF2WOi7iVhXvg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.4.tgz", + "integrity": "sha512-ustrPY8MryhloQj7OWGe+HrYx+aoiOxzbXTtgblbV3xwCqpzUK36phH3XNHQKj3EPonyFUuDTfR3qFhTEAuZEg==", "dev": true, "dependencies": { - "tslib": "^2.6.2" + "tslib": "^2.2.0" }, "engines": { - "node": ">=18.0.0" + "node": ">=14.0.0" } }, "node_modules/@azure/ms-rest-js": { @@ -796,12 +884,12 @@ "dev": true }, "node_modules/@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dev": true, "dependencies": { - "@babel/highlight": "^7.24.2", + "@babel/highlight": "^7.24.7", "picocolors": "^1.0.0" }, "engines": { @@ -809,30 +897,30 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", - "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", - "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.7", "chalk": "^2.4.2", "js-tokens": "^4.0.0", "picocolors": "^1.0.0" @@ -842,9 +930,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", - "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -854,13 +942,13 @@ } }, "node_modules/@babel/types": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", - "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.24.1", - "@babel/helper-validator-identifier": "^7.24.5", + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" }, "engines": { @@ -874,10 +962,11 @@ "dev": true }, "node_modules/@colors/colors": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", - "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", "dev": true, + "optional": true, "engines": { "node": ">=0.1.90" } @@ -894,9 +983,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", - "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", "cpu": [ "ppc64" ], @@ -910,9 +999,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", - "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", "cpu": [ "arm" ], @@ -926,9 +1015,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", - "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", "cpu": [ "arm64" ], @@ -942,9 +1031,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", - "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", "cpu": [ "x64" ], @@ -958,9 +1047,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", - "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", "cpu": [ "arm64" ], @@ -974,9 +1063,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", - "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", "cpu": [ "x64" ], @@ -990,9 +1079,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", - "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", "cpu": [ "arm64" ], @@ -1006,9 +1095,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", - "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", "cpu": [ "x64" ], @@ -1022,9 +1111,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", - "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", "cpu": [ "arm" ], @@ -1038,9 +1127,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", - "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", "cpu": [ "arm64" ], @@ -1054,9 +1143,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", - "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", "cpu": [ "ia32" ], @@ -1070,9 +1159,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", - "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", "cpu": [ "loong64" ], @@ -1086,9 +1175,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", - "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", "cpu": [ "mips64el" ], @@ -1102,9 +1191,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", - "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", "cpu": [ "ppc64" ], @@ -1118,9 +1207,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", - "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", "cpu": [ "riscv64" ], @@ -1134,9 +1223,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", - "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", "cpu": [ "s390x" ], @@ -1150,9 +1239,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", - "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", "cpu": [ "x64" ], @@ -1166,9 +1255,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", - "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", "cpu": [ "x64" ], @@ -1182,9 +1271,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", - "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", "cpu": [ "x64" ], @@ -1198,9 +1287,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", - "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", "cpu": [ "x64" ], @@ -1214,9 +1303,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", - "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", "cpu": [ "arm64" ], @@ -1230,9 +1319,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", - "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", "cpu": [ "ia32" ], @@ -1246,9 +1335,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", - "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", "cpu": [ "x64" ], @@ -1393,9 +1482,9 @@ } }, "node_modules/@opentelemetry/api": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.8.0.tgz", - "integrity": "sha512-I/s6F7yKUDdtMsoBWXJe8Qz40Tui5vsuKCWJEWVL+5q9sSWRzzx6v2KeNsOBEwd94j0eWkpWCH4yB6rZg9Mf0w==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", + "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==", "dev": true, "engines": { "node": ">=8.0.0" @@ -1452,9 +1541,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.17.2.tgz", - "integrity": "sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz", + "integrity": "sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==", "cpu": [ "arm" ], @@ -1465,9 +1554,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.17.2.tgz", - "integrity": "sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz", + "integrity": "sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==", "cpu": [ "arm64" ], @@ -1478,9 +1567,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.17.2.tgz", - "integrity": "sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz", + "integrity": "sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==", "cpu": [ "arm64" ], @@ -1491,9 +1580,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.17.2.tgz", - "integrity": "sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz", + "integrity": "sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==", "cpu": [ "x64" ], @@ -1504,9 +1593,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.17.2.tgz", - "integrity": "sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz", + "integrity": "sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==", "cpu": [ "arm" ], @@ -1517,9 +1606,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.17.2.tgz", - "integrity": "sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz", + "integrity": "sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==", "cpu": [ "arm" ], @@ -1530,9 +1619,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.17.2.tgz", - "integrity": "sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz", + "integrity": "sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==", "cpu": [ "arm64" ], @@ -1543,9 +1632,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.17.2.tgz", - "integrity": "sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz", + "integrity": "sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==", "cpu": [ "arm64" ], @@ -1556,9 +1645,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.17.2.tgz", - "integrity": "sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz", + "integrity": "sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==", "cpu": [ "ppc64" ], @@ -1569,9 +1658,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.17.2.tgz", - "integrity": "sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz", + "integrity": "sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==", "cpu": [ "riscv64" ], @@ -1582,9 +1671,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.17.2.tgz", - "integrity": "sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz", + "integrity": "sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==", "cpu": [ "s390x" ], @@ -1595,9 +1684,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.17.2.tgz", - "integrity": "sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz", + "integrity": "sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==", "cpu": [ "x64" ], @@ -1608,9 +1697,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.17.2.tgz", - "integrity": "sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz", + "integrity": "sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==", "cpu": [ "x64" ], @@ -1621,9 +1710,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.17.2.tgz", - "integrity": "sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz", + "integrity": "sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==", "cpu": [ "arm64" ], @@ -1634,9 +1723,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.17.2.tgz", - "integrity": "sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz", + "integrity": "sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==", "cpu": [ "ia32" ], @@ -1647,9 +1736,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.17.2.tgz", - "integrity": "sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz", + "integrity": "sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==", "cpu": [ "x64" ], @@ -1659,6 +1748,12 @@ "win32" ] }, + "node_modules/@sec-ant/readable-stream": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz", + "integrity": "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==", + "dev": true + }, "node_modules/@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -2254,9 +2349,9 @@ } }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -2266,10 +2361,13 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", "dev": true, + "dependencies": { + "acorn": "^8.11.0" + }, "engines": { "node": ">=0.4.0" } @@ -2581,16 +2679,6 @@ "@colors/colors": "1.5.0" } }, - "node_modules/cli-table3/node_modules/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.1.90" - } - }, "node_modules/cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -2764,9 +2852,9 @@ } }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -2780,6 +2868,12 @@ } } }, + "node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", @@ -2790,9 +2884,9 @@ } }, "node_modules/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", "dev": true, "dependencies": { "type-detect": "^4.0.0" @@ -2880,9 +2974,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", "dev": true, "hasInstallScript": true, "bin": { @@ -2892,29 +2986,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" } }, "node_modules/escalade": { @@ -2967,28 +3061,82 @@ } }, "node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-9.3.0.tgz", + "integrity": "sha512-l6JFbqnHEadBoVAVpN5dl2yCyfX28WoBAGaoQcNmLLSedOxTxcn2Qa83s8I/PA5i56vWru2OHOtrwF7Om2vqlg==", "dev": true, "dependencies": { + "@sindresorhus/merge-streams": "^4.0.0", "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", + "figures": "^6.1.0", + "get-stream": "^9.0.0", + "human-signals": "^7.0.0", + "is-plain-obj": "^4.1.0", + "is-stream": "^4.0.1", + "npm-run-path": "^5.2.0", + "pretty-ms": "^9.0.0", "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" + "strip-final-newline": "^4.0.0", + "yoctocolors": "^2.0.0" }, "engines": { - "node": ">=16.17" + "node": "^18.19.0 || >=20.5.0" }, "funding": { "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, + "node_modules/execa/node_modules/@sindresorhus/merge-streams": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz", + "integrity": "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/execa/node_modules/is-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz", + "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/execa/node_modules/parse-ms": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-4.0.0.tgz", + "integrity": "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/execa/node_modules/pretty-ms": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.0.0.tgz", + "integrity": "sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng==", + "dev": true, + "dependencies": { + "parse-ms": "^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -3070,6 +3218,21 @@ "node": "^12.20 || >= 14.13" } }, + "node_modules/figures": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", + "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==", + "dev": true, + "dependencies": { + "is-unicode-supported": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/file-type": { "version": "3.9.0", "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", @@ -3228,12 +3391,28 @@ } }, "node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-9.0.1.tgz", + "integrity": "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==", "dev": true, + "dependencies": { + "@sec-ant/readable-stream": "^0.4.1", + "is-stream": "^4.0.1" + }, "engines": { - "node": ">=16" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-stream/node_modules/is-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz", + "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==", + "dev": true, + "engines": { + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3252,6 +3431,7 @@ "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -3281,9 +3461,9 @@ } }, "node_modules/globby": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz", - "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz", + "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==", "dev": true, "dependencies": { "@sindresorhus/merge-streams": "^2.1.0", @@ -3454,12 +3634,12 @@ } }, "node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-7.0.0.tgz", + "integrity": "sha512-74kytxOUSvNbjrT9KisAbaTZ/eJwD/LrbM/kh5j0IhPuJzwuA19dWvniFGwBzN9rVjg+O/e+F310PjObDXS+9Q==", "dev": true, "engines": { - "node": ">=16.17.0" + "node": ">=18.18.0" } }, "node_modules/humanize-duration": { @@ -3493,6 +3673,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, "dependencies": { "once": "^1.3.0", @@ -3571,13 +3752,25 @@ "node": ">=0.12.0" } }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3589,6 +3782,18 @@ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, + "node_modules/is-unicode-supported": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", + "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -3645,6 +3850,21 @@ "node": ">=8" } }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/istanbul-lib-report/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -3658,9 +3878,9 @@ } }, "node_modules/istanbul-lib-source-maps": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.4.tgz", - "integrity": "sha512-wHOoEsNJTVltaJp8eVkm8w+GVkVNHT2YDYo53YdzQEL2gWm1hBX5cGFR9hQJtuGLebidVX7et3+dmDZrmclduw==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.5.tgz", + "integrity": "sha512-gKf4eJ8bHmSX/ljiOCpnd8vtmHTwG71uugm0kXYd5aqFCl6z8cj8k7QduXSwU6QOst6LCdSXTlaoc8W4554crQ==", "dev": true, "dependencies": { "@jridgewell/trace-mapping": "^0.3.23", @@ -3817,30 +4037,6 @@ "node": ">=8" } }, - "node_modules/junit-report-builder/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/junit-report-builder/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -3934,6 +4130,15 @@ "node": ">= 12.0.0" } }, + "node_modules/logform/node_modules/@colors/colors": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", + "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, "node_modules/loupe": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", @@ -3976,20 +4181,29 @@ } }, "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "dependencies": { - "semver": "^7.5.3" + "semver": "^6.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/md5-file": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/md5-file/-/md5-file-5.0.0.tgz", @@ -4024,12 +4238,12 @@ } }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", "dev": true, "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -4118,14 +4332,14 @@ } }, "node_modules/mlly": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.0.tgz", - "integrity": "sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.1.tgz", + "integrity": "sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==", "dev": true, "dependencies": { "acorn": "^8.11.3", "pathe": "^1.1.2", - "pkg-types": "^1.1.0", + "pkg-types": "^1.1.1", "ufo": "^1.5.3" } }, @@ -4139,9 +4353,9 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, "node_modules/mustache": { @@ -4339,9 +4553,9 @@ } }, "node_modules/oav": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/oav/-/oav-3.3.7.tgz", - "integrity": "sha512-zwtLSCTCADo8AcjUc8YFLvCHiamAs1E2n/8QVSmX+FzdqI7TeNm98k8xyQX393cD4OW7VFY9BQ9vDpi1Ap/SKg==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/oav/-/oav-3.3.8.tgz", + "integrity": "sha512-5euGa3jDaJfYNz/5WSoPEEx5fM6POUqCWol0GIkRjGFXhpaWcXDvDr3CURWDgdh6E8JjMndet9IoHAGtbrEniA==", "dev": true, "dependencies": { "@apidevtools/swagger-parser": "10.0.3", @@ -4390,43 +4604,6 @@ "node": ">=18.0.0" } }, - "node_modules/oav/node_modules/@azure/abort-controller": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.1.2.tgz", - "integrity": "sha512-nBrLsEWm4J2u5LpAPjxADTlq3trDgVZZXHNKabeXZtpq3d3AbN/KGO82R87rdDz5/lYB024rtEf10/q0urNgsA==", - "dev": true, - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/oav/node_modules/@azure/core-util": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.7.0.tgz", - "integrity": "sha512-Zq2i3QO6k9DA8vnm29mYM4G8IE9u1mhF1GUabVEqPNX8Lj833gdxQ2NAFxt2BZsfAL+e9cT8SyVN7dFVJ/Hf0g==", - "dev": true, - "dependencies": { - "@azure/abort-controller": "^2.0.0", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/oav/node_modules/@azure/logger": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.4.tgz", - "integrity": "sha512-ustrPY8MryhloQj7OWGe+HrYx+aoiOxzbXTtgblbV3xwCqpzUK36phH3XNHQKj3EPonyFUuDTfR3qFhTEAuZEg==", - "dev": true, - "dependencies": { - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/oav/node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -4665,13 +4842,13 @@ } }, "node_modules/pkg-types": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.1.tgz", - "integrity": "sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.1.2.tgz", + "integrity": "sha512-VEGf1he2DR5yowYRl0XJhWJq5ktm9gYIsH+y8sNJpHlxch7JPDaufgrsl4vYjd9hMUY8QVjoNncKbow9I7exyA==", "dev": true, "dependencies": { "confbox": "^0.1.7", - "mlly": "^1.7.0", + "mlly": "^1.7.1", "pathe": "^1.1.2" } }, @@ -4685,9 +4862,9 @@ } }, "node_modules/postcss": { - "version": "8.4.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", - "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", + "version": "8.4.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz", + "integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==", "dev": true, "funding": [ { @@ -4705,7 +4882,7 @@ ], "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "source-map-js": "^1.2.0" }, "engines": { @@ -5092,9 +5269,9 @@ } }, "node_modules/rollup": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.17.2.tgz", - "integrity": "sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==", + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", + "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -5107,22 +5284,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.17.2", - "@rollup/rollup-android-arm64": "4.17.2", - "@rollup/rollup-darwin-arm64": "4.17.2", - "@rollup/rollup-darwin-x64": "4.17.2", - "@rollup/rollup-linux-arm-gnueabihf": "4.17.2", - "@rollup/rollup-linux-arm-musleabihf": "4.17.2", - "@rollup/rollup-linux-arm64-gnu": "4.17.2", - "@rollup/rollup-linux-arm64-musl": "4.17.2", - "@rollup/rollup-linux-powerpc64le-gnu": "4.17.2", - "@rollup/rollup-linux-riscv64-gnu": "4.17.2", - "@rollup/rollup-linux-s390x-gnu": "4.17.2", - "@rollup/rollup-linux-x64-gnu": "4.17.2", - "@rollup/rollup-linux-x64-musl": "4.17.2", - "@rollup/rollup-win32-arm64-msvc": "4.17.2", - "@rollup/rollup-win32-ia32-msvc": "4.17.2", - "@rollup/rollup-win32-x64-msvc": "4.17.2", + "@rollup/rollup-android-arm-eabi": "4.18.0", + "@rollup/rollup-android-arm64": "4.18.0", + "@rollup/rollup-darwin-arm64": "4.18.0", + "@rollup/rollup-darwin-x64": "4.18.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", + "@rollup/rollup-linux-arm-musleabihf": "4.18.0", + "@rollup/rollup-linux-arm64-gnu": "4.18.0", + "@rollup/rollup-linux-arm64-musl": "4.18.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", + "@rollup/rollup-linux-riscv64-gnu": "4.18.0", + "@rollup/rollup-linux-s390x-gnu": "4.18.0", + "@rollup/rollup-linux-x64-gnu": "4.18.0", + "@rollup/rollup-linux-x64-musl": "4.18.0", + "@rollup/rollup-win32-arm64-msvc": "4.18.0", + "@rollup/rollup-win32-ia32-msvc": "4.18.0", + "@rollup/rollup-win32-x64-msvc": "4.18.0", "fsevents": "~2.3.2" } }, @@ -5275,14 +5452,14 @@ } }, "node_modules/simple-git": { - "version": "3.24.0", - "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.24.0.tgz", - "integrity": "sha512-QqAKee9Twv+3k8IFOFfPB2hnk6as6Y6ACUpwCtQvRYBAes23Wv3SZlHVobAzqcE8gfsisCvPw3HGW3HYM+VYYw==", + "version": "3.25.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.25.0.tgz", + "integrity": "sha512-KIY5sBnzc4yEcJXW7Tdv4viEz8KyG+nU0hay+DWZasvdFOYKeUZ6Xc25LUHHjw0tinPT7O1eY6pzX7pRT1K8rw==", "dev": true, "dependencies": { "@kwsites/file-exists": "^1.1.1", "@kwsites/promise-deferred": "^1.1.1", - "debug": "^4.3.4" + "debug": "^4.3.5" }, "funding": { "type": "github", @@ -5437,12 +5614,12 @@ } }, "node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-4.0.0.tgz", + "integrity": "sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==", "dev": true, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -5587,9 +5764,9 @@ } }, "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", "dev": true }, "node_modules/tunnel": { @@ -5773,9 +5950,9 @@ } }, "node_modules/vite-node/node_modules/@types/node": { - "version": "20.12.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", - "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", + "version": "20.14.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz", + "integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==", "dev": true, "optional": true, "peer": true, @@ -5784,12 +5961,12 @@ } }, "node_modules/vite-node/node_modules/vite": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.11.tgz", - "integrity": "sha512-HndV31LWW05i1BLPMUCE1B9E9GFbOu1MbenhS58FuK6owSO5qHm7GiCotrNY1YE5rMeQSFBGmT5ZaLEjFizgiQ==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.2.tgz", + "integrity": "sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA==", "dev": true, "dependencies": { - "esbuild": "^0.20.1", + "esbuild": "^0.21.3", "postcss": "^8.4.38", "rollup": "^4.13.0" }, @@ -5979,16 +6156,13 @@ "node": ">= 12.0.0" } }, - "node_modules/winston/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/winston/node_modules/@colors/colors": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", + "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", "dev": true, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.1.90" } }, "node_modules/word-wrap": { @@ -6103,9 +6277,9 @@ "dev": true }, "node_modules/yaml": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz", - "integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==", + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.5.tgz", + "integrity": "sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==", "dev": true, "bin": { "yaml": "bin.mjs" @@ -6150,9 +6324,9 @@ } }, "node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", "dev": true, "engines": { "node": ">=12.20" @@ -6161,6 +6335,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/yoctocolors": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.1.0.tgz", + "integrity": "sha512-FsQpXXeOEe05tcJN4Z2eicuC6+6KiJdBbPOAChanSkwwjZ277XGsh8wh/HaPuGeifTiw/7dgAzabitu2bnDvRg==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/z-schema": { "version": "5.0.5", "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.5.tgz", From c142d613ea72dcc1251a5d4402147f13afc01f2a Mon Sep 17 00:00:00 2001 From: Mitesh Shah <58204159+mitsha-microsoft@users.noreply.github.com> Date: Tue, 2 Jul 2024 19:50:06 +0530 Subject: [PATCH 42/52] Fixed examples and property documentation in TestProfiles (#29664) * Fixed examples and properrty documentation in TestProfiles * Remove CANCELLED change --- .../2024-05-01-preview/CreateOrUpdateTestProfile.json | 4 ++-- .../2024-05-01-preview/CreateOrUpdateTestProfileRun.json | 4 ++-- .../examples/2024-05-01-preview/GetTestProfile.json | 4 ++-- .../2024-05-01-preview/GetTestProfileRun_Executed.json | 4 ++-- .../2024-05-01-preview/GetTestProfileRun_Executing.json | 4 ++-- .../examples/2024-05-01-preview/ListTestProfileRuns.json | 4 ++-- .../examples/2024-05-01-preview/ListTestProfiles.json | 4 ++-- .../examples/2024-05-01-preview/StopTestProfileRun.json | 4 ++-- .../loadtestservice/LoadTestService/models.testprofile.tsp | 2 +- .../examples/CreateOrUpdateTestProfile.json | 4 ++-- .../examples/CreateOrUpdateTestProfileRun.json | 4 ++-- .../preview/2024-05-01-preview/examples/GetTestProfile.json | 4 ++-- .../examples/GetTestProfileRun_Executed.json | 4 ++-- .../examples/GetTestProfileRun_Executing.json | 4 ++-- .../2024-05-01-preview/examples/ListTestProfileRuns.json | 4 ++-- .../preview/2024-05-01-preview/examples/ListTestProfiles.json | 4 ++-- .../2024-05-01-preview/examples/StopTestProfileRun.json | 4 ++-- .../preview/2024-05-01-preview/loadtestservice.json | 4 ++-- 18 files changed, 35 insertions(+), 35 deletions(-) diff --git a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/CreateOrUpdateTestProfile.json b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/CreateOrUpdateTestProfile.json index 64e2f5516732..389c8d014750 100644 --- a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/CreateOrUpdateTestProfile.json +++ b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/CreateOrUpdateTestProfile.json @@ -13,11 +13,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/CreateOrUpdateTestProfileRun.json b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/CreateOrUpdateTestProfileRun.json index d0765c4ddf08..ee0823ffc42e 100644 --- a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/CreateOrUpdateTestProfileRun.json +++ b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/CreateOrUpdateTestProfileRun.json @@ -26,11 +26,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfile.json b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfile.json index de3ccfec49b7..6b39216ab1be 100644 --- a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfile.json +++ b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfile.json @@ -17,11 +17,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfileRun_Executed.json b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfileRun_Executed.json index 2dbfe73ad54f..a6695a3d9075 100644 --- a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfileRun_Executed.json +++ b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfileRun_Executed.json @@ -21,11 +21,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfileRun_Executing.json b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfileRun_Executing.json index 25756f76a81f..f30557620b8d 100644 --- a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfileRun_Executing.json +++ b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/GetTestProfileRun_Executing.json @@ -19,11 +19,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/ListTestProfileRuns.json b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/ListTestProfileRuns.json index 78af0f0b7ad3..76e1cf9ef561 100644 --- a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/ListTestProfileRuns.json +++ b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/ListTestProfileRuns.json @@ -29,11 +29,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/ListTestProfiles.json b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/ListTestProfiles.json index fcf359be1f1a..ac5476e50ba6 100644 --- a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/ListTestProfiles.json +++ b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/ListTestProfiles.json @@ -23,11 +23,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/StopTestProfileRun.json b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/StopTestProfileRun.json index 0837614fbd0d..57ab06f4caf8 100644 --- a/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/StopTestProfileRun.json +++ b/specification/loadtestservice/LoadTestService/examples/2024-05-01-preview/StopTestProfileRun.json @@ -21,11 +21,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/LoadTestService/models.testprofile.tsp b/specification/loadtestservice/LoadTestService/models.testprofile.tsp index 02e1e85232ac..7c82e576f1c3 100644 --- a/specification/loadtestservice/LoadTestService/models.testprofile.tsp +++ b/specification/loadtestservice/LoadTestService/models.testprofile.tsp @@ -85,7 +85,7 @@ union RecommendationCategory { @added(APIVersions.v2024_05_01_preview) model FunctionFlexConsumptionResourceConfiguration { #suppress "@azure-tools/typespec-azure-core/casing-style" "Abbreviating MB to Mb changes the meaning of the value." - @doc("Memory size of the instance. Supported values are 512, 2048, 2096.") + @doc("Memory size of the instance. Supported values are 2048, 4096.") instanceMemoryMB: int64; @doc("HTTP Concurrency for the function app.") diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/CreateOrUpdateTestProfile.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/CreateOrUpdateTestProfile.json index 64e2f5516732..389c8d014750 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/CreateOrUpdateTestProfile.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/CreateOrUpdateTestProfile.json @@ -13,11 +13,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/CreateOrUpdateTestProfileRun.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/CreateOrUpdateTestProfileRun.json index d0765c4ddf08..ee0823ffc42e 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/CreateOrUpdateTestProfileRun.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/CreateOrUpdateTestProfileRun.json @@ -26,11 +26,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfile.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfile.json index de3ccfec49b7..6b39216ab1be 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfile.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfile.json @@ -17,11 +17,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfileRun_Executed.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfileRun_Executed.json index 2dbfe73ad54f..a6695a3d9075 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfileRun_Executed.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfileRun_Executed.json @@ -21,11 +21,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfileRun_Executing.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfileRun_Executing.json index 25756f76a81f..f30557620b8d 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfileRun_Executing.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/GetTestProfileRun_Executing.json @@ -19,11 +19,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/ListTestProfileRuns.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/ListTestProfileRuns.json index 78af0f0b7ad3..76e1cf9ef561 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/ListTestProfileRuns.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/ListTestProfileRuns.json @@ -29,11 +29,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/ListTestProfiles.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/ListTestProfiles.json index fcf359be1f1a..ac5476e50ba6 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/ListTestProfiles.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/ListTestProfiles.json @@ -23,11 +23,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/StopTestProfileRun.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/StopTestProfileRun.json index 0837614fbd0d..57ab06f4caf8 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/StopTestProfileRun.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/examples/StopTestProfileRun.json @@ -21,11 +21,11 @@ "kind": "FunctionsFlexConsumption", "configurations": { "config1": { - "instanceMemoryMB": 512, + "instanceMemoryMB": 2048, "httpConcurrency": 16 }, "config2": { - "instanceMemoryMB": 2048, + "instanceMemoryMB": 4096, "httpConcurrency": 16 } } diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/loadtestservice.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/loadtestservice.json index b0cdb8ed7c12..38839ab8327d 100644 --- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/loadtestservice.json +++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/loadtestservice.json @@ -2584,7 +2584,7 @@ "instanceMemoryMB": { "type": "integer", "format": "int64", - "description": "Memory size of the instance. Supported values are 512, 2048, 2096." + "description": "Memory size of the instance. Supported values are 2048, 4096." }, "httpConcurrency": { "type": "integer", @@ -2604,7 +2604,7 @@ "instanceMemoryMB": { "type": "integer", "format": "int64", - "description": "Memory size of the instance. Supported values are 512, 2048, 2096." + "description": "Memory size of the instance. Supported values are 2048, 4096." }, "httpConcurrency": { "type": "integer", From 3cb1b51638616435470fc10ea00de92512186ece Mon Sep 17 00:00:00 2001 From: Han Chiang Date: Wed, 3 Jul 2024 13:54:13 +0800 Subject: [PATCH 43/52] Update detection description (#29662) * Update detection description * update spec --- specification/ai/Face/routes.detection.tsp | 2 +- .../ai/data-plane/Face/preview/v1.1-preview.1/Face.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/specification/ai/Face/routes.detection.tsp b/specification/ai/Face/routes.detection.tsp index 18a54399cfb8..a392586ea93a 100644 --- a/specification/ai/Face/routes.detection.tsp +++ b/specification/ai/Face/routes.detection.tsp @@ -16,7 +16,7 @@ namespace Face; @summary("Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.") @doc(""" > [!IMPORTANT] - > Microsoft has retired or restricted facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The restricted capabilities are age, smile, facial hair, hair and makeup. Email Azure Face API if you have a responsible use case that would benefit from the use of any of the restricted capabilities. Read more about this decision https://azure.microsoft.com/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/. + > Microsoft has retired or limited facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The limited capabilities are age, smile, facial hair, hair and makeup. Email Azure Face API if you have a responsible use case that would benefit from the use of any of the limited capabilities. Read more about this decision https://azure.microsoft.com/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/. * * No image will be stored. Only the extracted face feature(s) will be stored on server. The faceId is an identifier of the face feature and will be used in \"Identify\", \"Verify\", and \"Find Similar\". The stored face features will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call. diff --git a/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json b/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json index f5f77b5d0d1b..9ad89a4484f6 100644 --- a/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json +++ b/specification/ai/data-plane/Face/preview/v1.1-preview.1/Face.json @@ -88,7 +88,7 @@ "post": { "operationId": "FaceDetectionOperations_DetectFromUrl", "summary": "Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.", - "description": "> [!IMPORTANT]\n> Microsoft has retired or restricted facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The restricted capabilities are age, smile, facial hair, hair and makeup. Email Azure Face API if you have a responsible use case that would benefit from the use of any of the restricted capabilities. Read more about this decision https://azure.microsoft.com/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/.\n\n*\n * No image will be stored. Only the extracted face feature(s) will be stored on server. The faceId is an identifier of the face feature and will be used in \"Identify\", \"Verify\", and \"Find Similar\". The stored face features will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call.\n * Optional parameters include faceId, landmarks, and attributes. Attributes include headPose, glasses, occlusion, accessories, blur, exposure, noise, mask, and qualityForRecognition. Some of the results returned for specific attributes may not be highly accurate.\n * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n * Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n * For optimal results when querying \"Identify\", \"Verify\", and \"Find Similar\" ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model\n * 'detection_02': Face attributes and landmarks are disabled if you choose this detection model.\n * 'detection_03': Face attributes (mask, blur, and headPose) and landmarks are supported if you choose this detection model.\n * Different 'recognitionModel' values are provided. If follow-up operations like \"Verify\", \"Identify\", \"Find Similar\" are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-recognition-model.", + "description": "> [!IMPORTANT]\n> Microsoft has retired or limited facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The limited capabilities are age, smile, facial hair, hair and makeup. Email Azure Face API if you have a responsible use case that would benefit from the use of any of the limited capabilities. Read more about this decision https://azure.microsoft.com/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/.\n\n*\n * No image will be stored. Only the extracted face feature(s) will be stored on server. The faceId is an identifier of the face feature and will be used in \"Identify\", \"Verify\", and \"Find Similar\". The stored face features will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call.\n * Optional parameters include faceId, landmarks, and attributes. Attributes include headPose, glasses, occlusion, accessories, blur, exposure, noise, mask, and qualityForRecognition. Some of the results returned for specific attributes may not be highly accurate.\n * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n * Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n * For optimal results when querying \"Identify\", \"Verify\", and \"Find Similar\" ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model\n * 'detection_02': Face attributes and landmarks are disabled if you choose this detection model.\n * 'detection_03': Face attributes (mask, blur, and headPose) and landmarks are supported if you choose this detection model.\n * Different 'recognitionModel' values are provided. If follow-up operations like \"Verify\", \"Identify\", \"Find Similar\" are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-recognition-model.", "parameters": [ { "name": "detectionModel", @@ -5585,7 +5585,7 @@ "post": { "operationId": "FaceDetectionOperations_Detect", "summary": "Detect human faces in an image, return face rectangles, and optionally with faceIds, landmarks, and attributes.", - "description": "> [!IMPORTANT]\n> Microsoft has retired or restricted facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The restricted capabilities are age, smile, facial hair, hair and makeup. Email Azure Face API if you have a responsible use case that would benefit from the use of any of the restricted capabilities. Read more about this decision https://azure.microsoft.com/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/.\n\n*\n * No image will be stored. Only the extracted face feature(s) will be stored on server. The faceId is an identifier of the face feature and will be used in \"Identify\", \"Verify\", and \"Find Similar\". The stored face features will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call.\n * Optional parameters include faceId, landmarks, and attributes. Attributes include headPose, glasses, occlusion, accessories, blur, exposure, noise, mask, and qualityForRecognition. Some of the results returned for specific attributes may not be highly accurate.\n * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n * Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n * For optimal results when querying \"Identify\", \"Verify\", and \"Find Similar\" ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model\n * 'detection_02': Face attributes and landmarks are disabled if you choose this detection model.\n * 'detection_03': Face attributes (mask, blur, and headPose) and landmarks are supported if you choose this detection model.\n * Different 'recognitionModel' values are provided. If follow-up operations like \"Verify\", \"Identify\", \"Find Similar\" are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-recognition-model.", + "description": "> [!IMPORTANT]\n> Microsoft has retired or limited facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The limited capabilities are age, smile, facial hair, hair and makeup. Email Azure Face API if you have a responsible use case that would benefit from the use of any of the limited capabilities. Read more about this decision https://azure.microsoft.com/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/.\n\n*\n * No image will be stored. Only the extracted face feature(s) will be stored on server. The faceId is an identifier of the face feature and will be used in \"Identify\", \"Verify\", and \"Find Similar\". The stored face features will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call.\n * Optional parameters include faceId, landmarks, and attributes. Attributes include headPose, glasses, occlusion, accessories, blur, exposure, noise, mask, and qualityForRecognition. Some of the results returned for specific attributes may not be highly accurate.\n * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.\n * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.\n * Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.\n * For optimal results when querying \"Identify\", \"Verify\", and \"Find Similar\" ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).\n * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model\n * 'detection_02': Face attributes and landmarks are disabled if you choose this detection model.\n * 'detection_03': Face attributes (mask, blur, and headPose) and landmarks are supported if you choose this detection model.\n * Different 'recognitionModel' values are provided. If follow-up operations like \"Verify\", \"Identify\", \"Find Similar\" are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-recognition-model.", "consumes": [ "application/octet-stream" ], From 07d286359f828bbc7901e86288a5d62b48ae2052 Mon Sep 17 00:00:00 2001 From: ZiWei Chen <98569699+kazrael2119@users.noreply.github.com> Date: Wed, 3 Jul 2024 17:18:15 +0800 Subject: [PATCH 44/52] update password in example to fix sdk credscan error (#29666) * update password in example to fix sdk credscan error * update in tsp example --- .../examples/2023-10-07/GuestAgents_Create_MaximumSet_Gen.json | 2 +- .../2023-10-07/VmmServers_CreateOrUpdate_MaximumSet_Gen.json | 2 +- .../2023-10-07/examples/GuestAgents_Create_MaximumSet_Gen.json | 2 +- .../examples/VmmServers_CreateOrUpdate_MaximumSet_Gen.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/specification/scvmm/ScVmm.Management/examples/2023-10-07/GuestAgents_Create_MaximumSet_Gen.json b/specification/scvmm/ScVmm.Management/examples/2023-10-07/GuestAgents_Create_MaximumSet_Gen.json index e9b7586788ff..d4e4906149fe 100644 --- a/specification/scvmm/ScVmm.Management/examples/2023-10-07/GuestAgents_Create_MaximumSet_Gen.json +++ b/specification/scvmm/ScVmm.Management/examples/2023-10-07/GuestAgents_Create_MaximumSet_Gen.json @@ -8,7 +8,7 @@ "properties": { "credentials": { "username": "jqxuwirrcpfv", - "password": "gkvbnmuahumuoibvscoxzfdqwvfuf" + "password": "SecretPlaceholder" }, "httpProxyConfig": { "httpsProxy": "uoyzyticmohohomlkwct" diff --git a/specification/scvmm/ScVmm.Management/examples/2023-10-07/VmmServers_CreateOrUpdate_MaximumSet_Gen.json b/specification/scvmm/ScVmm.Management/examples/2023-10-07/VmmServers_CreateOrUpdate_MaximumSet_Gen.json index bb3f5c2817a4..d95fe593f9ec 100644 --- a/specification/scvmm/ScVmm.Management/examples/2023-10-07/VmmServers_CreateOrUpdate_MaximumSet_Gen.json +++ b/specification/scvmm/ScVmm.Management/examples/2023-10-07/VmmServers_CreateOrUpdate_MaximumSet_Gen.json @@ -10,7 +10,7 @@ "properties": { "credentials": { "username": "jbuoltypmrgqfi", - "password": "gaecsnkjr" + "password": "SecretPlaceholder" }, "fqdn": "pvzcjaqrswbvptgx", "port": 4 diff --git a/specification/scvmm/resource-manager/Microsoft.ScVmm/stable/2023-10-07/examples/GuestAgents_Create_MaximumSet_Gen.json b/specification/scvmm/resource-manager/Microsoft.ScVmm/stable/2023-10-07/examples/GuestAgents_Create_MaximumSet_Gen.json index e9b7586788ff..d4e4906149fe 100644 --- a/specification/scvmm/resource-manager/Microsoft.ScVmm/stable/2023-10-07/examples/GuestAgents_Create_MaximumSet_Gen.json +++ b/specification/scvmm/resource-manager/Microsoft.ScVmm/stable/2023-10-07/examples/GuestAgents_Create_MaximumSet_Gen.json @@ -8,7 +8,7 @@ "properties": { "credentials": { "username": "jqxuwirrcpfv", - "password": "gkvbnmuahumuoibvscoxzfdqwvfuf" + "password": "SecretPlaceholder" }, "httpProxyConfig": { "httpsProxy": "uoyzyticmohohomlkwct" diff --git a/specification/scvmm/resource-manager/Microsoft.ScVmm/stable/2023-10-07/examples/VmmServers_CreateOrUpdate_MaximumSet_Gen.json b/specification/scvmm/resource-manager/Microsoft.ScVmm/stable/2023-10-07/examples/VmmServers_CreateOrUpdate_MaximumSet_Gen.json index bb3f5c2817a4..d95fe593f9ec 100644 --- a/specification/scvmm/resource-manager/Microsoft.ScVmm/stable/2023-10-07/examples/VmmServers_CreateOrUpdate_MaximumSet_Gen.json +++ b/specification/scvmm/resource-manager/Microsoft.ScVmm/stable/2023-10-07/examples/VmmServers_CreateOrUpdate_MaximumSet_Gen.json @@ -10,7 +10,7 @@ "properties": { "credentials": { "username": "jbuoltypmrgqfi", - "password": "gaecsnkjr" + "password": "SecretPlaceholder" }, "fqdn": "pvzcjaqrswbvptgx", "port": 4 From b39fbab7d4b73760655ff7944e12b1056ddf7aff Mon Sep 17 00:00:00 2001 From: Allen Zhang Date: Wed, 3 Jul 2024 15:06:27 -0700 Subject: [PATCH 45/52] Update Getting-started-with-TypeSpec-specifications.md (#29674) fixing broken link to tspconfig.yaml --- .../Getting-started-with-TypeSpec-specifications.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/documentation/Getting-started-with-TypeSpec-specifications.md b/documentation/Getting-started-with-TypeSpec-specifications.md index 91f38fedd303..ee2add8f0212 100644 --- a/documentation/Getting-started-with-TypeSpec-specifications.md +++ b/documentation/Getting-started-with-TypeSpec-specifications.md @@ -16,14 +16,14 @@ Within the azure-rest-api-specs repository, the TypeSpec specification serves as #### ARM: - :white_check_mark: TypeSpec folder name should end with `.Management`. -- :white_check_mark: This `tspconfig.yaml` is [standard for ARM](https://github.com/microsoft/typespec/blob/main/eng/feeds/arm/tspconfig.yaml). The one thing you may customize is the output json file name for `typespec-autorest` emitter. +- :white_check_mark: This `tspconfig.yaml` is [standard for ARM](https://github.com/Azure/typespec-azure/blob/main/eng/feeds/arm/tspconfig.yaml). The one thing you may customize is the output json file name for `typespec-autorest` emitter. #### Data-Plane: -- :white_check_mark: `tspconfig.yaml` starting template for [Data-plane is here.](https://github.com/microsoft/typespec/blob/main/eng/feeds/arm/tspconfig.yaml). For `typespec-autorest` emitter, you may only customize the output json file name. For other language SDK emitters' settings, you may override values for TypeSpec direct SDK generation. +- :white_check_mark: `tspconfig.yaml` starting template for [Data-plane is here.](https://github.com/Azure/typespec-azure/blob/main/eng/feeds/data-plane/tspconfig.yaml). For `typespec-autorest` emitter, you may only customize the output json file name. For other language SDK emitters' settings, you may override values for TypeSpec direct SDK generation. ### Detailed information - [Setting up local environment for TypeSpec](./typespec-rest-api-dev-process.md#2-repo-setup--prerequisites) - Read up on [Folder Structure for TypeSpec](./typespec-structure-guidelines.md) - [Setting up a new TypeSpec project](./typespec-rest-api-dev-process.md#3-creating-a-new-typespec-project) -- [Setting up and regenerate SDK projects](./typespec-rest-api-dev-process.md#4-generate-or-refresh-sdk-code-from-a-typespec-project) \ No newline at end of file +- [Setting up and regenerate SDK projects](./typespec-rest-api-dev-process.md#4-generate-or-refresh-sdk-code-from-a-typespec-project) From c760f2590f71fb629648163194436a2efa0969df Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Thu, 4 Jul 2024 11:59:20 +0800 Subject: [PATCH 46/52] [azure fleet] Update tspconfig.yaml for python (#29695) --- specification/azurefleet/AzureFleet.Management/tspconfig.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/azurefleet/AzureFleet.Management/tspconfig.yaml b/specification/azurefleet/AzureFleet.Management/tspconfig.yaml index 6e187771dfb0..2f4a5b303be1 100644 --- a/specification/azurefleet/AzureFleet.Management/tspconfig.yaml +++ b/specification/azurefleet/AzureFleet.Management/tspconfig.yaml @@ -26,6 +26,7 @@ options: "@azure-tools/typespec-python": package-dir: "azure-mgmt-computefleet" package-name: "{package-dir}" + generate-test: true flavor: "azure" "@azure-tools/typespec-java": package-dir: "azure-resourcemanager-computefleet" From 73e75c8d031d9d934d2ea2e431cf9dbeb3902195 Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Thu, 4 Jul 2024 14:33:34 +0800 Subject: [PATCH 47/52] Update readme.md to remove `-track2` for python (#29697) * Update readme.md * remote go spec automation --------- Co-authored-by: Alancere <804873052@qq.com> --- specification/mongocluster/resource-manager/readme.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/mongocluster/resource-manager/readme.md b/specification/mongocluster/resource-manager/readme.md index 8cd75006ffd3..37341dec4f7e 100644 --- a/specification/mongocluster/resource-manager/readme.md +++ b/specification/mongocluster/resource-manager/readme.md @@ -49,9 +49,8 @@ This is not used by Autorest itself. ```yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python-track2 + - repo: azure-sdk-for-python - repo: azure-sdk-for-java - - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-resource-manager-schemas - repo: azure-cli-extensions From edf14cc0a577f6b9c4e3ce018cec0c383e64b7b0 Mon Sep 17 00:00:00 2001 From: Xiaofei Cao <92354331+XiaofeiCao@users.noreply.github.com> Date: Thu, 4 Jul 2024 17:49:24 +0800 Subject: [PATCH 48/52] fix service-dir (#29679) --- specification/azurefleet/AzureFleet.Management/tspconfig.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/azurefleet/AzureFleet.Management/tspconfig.yaml b/specification/azurefleet/AzureFleet.Management/tspconfig.yaml index 2f4a5b303be1..05aeccd4f73e 100644 --- a/specification/azurefleet/AzureFleet.Management/tspconfig.yaml +++ b/specification/azurefleet/AzureFleet.Management/tspconfig.yaml @@ -1,6 +1,6 @@ parameters: "service-dir": - default: "sdk/azurefleet" + default: "sdk/computefleet" "service-directory-name": default: "azurefleet" emit: From ab064e0047ec560a700d6b501097d99471ad817b Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Fri, 5 Jul 2024 17:39:14 +0800 Subject: [PATCH 49/52] Update tspconfig.yaml (#29711) https://github.com/Azure/sdk-release-request/issues/5073 --- specification/edgezones/EdgeZones.Management/tspconfig.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/edgezones/EdgeZones.Management/tspconfig.yaml b/specification/edgezones/EdgeZones.Management/tspconfig.yaml index 22e3d53aa5fe..c89f4eb4e50d 100644 --- a/specification/edgezones/EdgeZones.Management/tspconfig.yaml +++ b/specification/edgezones/EdgeZones.Management/tspconfig.yaml @@ -16,6 +16,7 @@ options: "@azure-tools/typespec-python": package-dir: "azure-mgmt-edgezones" package-name: "{package-dir}" + generate-test: true flavor: "azure" "@azure-tools/typespec-java": package-dir: "azure-resourcemanager-edgezones" From a977c730fda43ab19c05373b32c7159d6f265e9a Mon Sep 17 00:00:00 2001 From: Ajay verma Date: Mon, 8 Jul 2024 17:28:47 +0530 Subject: [PATCH 50/52] Stable version API for Qumulo: 2024-06-19 (#29673) * adding stable version API for Qumulo * resolved .md comments * resolved .md comments * resolved typespec and swagger comments * resolved typespec and swagger comments * updated readme.md * addressed comments * addressed comments * add sdk-suppressions.yaml * Update readme.typescript.md * Update readme.typescript.md * update readme.go.md * update sdk-suppressions.yaml --------- Co-authored-by: Ajay Verma Co-authored-by: Alancere <804873052@qq.com> Co-authored-by: kazrael2119 <98569699+kazrael2119@users.noreply.github.com> --- .../Qumulo.Management/cadl-project.yaml | 4 - ...Systems_CreateOrUpdate_MaximumSet_Gen.json | 149 ---- .../FileSystems_Delete_MaximumSet_Gen.json | 17 - .../FileSystems_Delete_MinimumSet_Gen.json | 17 - .../FileSystems_Get_MaximumSet_Gen.json | 61 -- ...ms_ListByResourceGroup_MaximumSet_Gen.json | 65 -- ...ems_ListBySubscription_MaximumSet_Gen.json | 64 -- .../FileSystems_Update_MaximumSet_Gen.json | 89 --- .../Operations_List_MaximumSet_Gen.json | 26 - .../Operations_List_MinimumSet_Gen.json | 10 - ...Systems_CreateOrUpdate_MaximumSet_Gen.json | 149 ---- .../FileSystems_Delete_MaximumSet_Gen.json | 17 - .../FileSystems_Delete_MinimumSet_Gen.json | 17 - .../FileSystems_Get_MaximumSet_Gen.json | 61 -- ...ms_ListByResourceGroup_MaximumSet_Gen.json | 65 -- ...ems_ListBySubscription_MaximumSet_Gen.json | 64 -- .../FileSystems_Update_MaximumSet_Gen.json | 89 --- .../Operations_List_MaximumSet_Gen.json | 26 - .../Operations_List_MinimumSet_Gen.json | 10 - .../liftrqumulo/Qumulo.Management/main.cadl | 179 ----- .../Qumulo.Management/package.json | 21 - .../LiftrBase.Storage/main.tsp | 137 ++++ .../LiftrBase/main.tsp | 139 ++++ ...Systems_CreateOrUpdate_MaximumSet_Gen.json | 147 ++++ ...Systems_CreateOrUpdate_MinimumSet_Gen.json | 78 +- .../FileSystems_Delete_MaximumSet_Gen.json | 19 + .../FileSystems_Delete_MinimumSet_Gen.json | 19 + .../FileSystems_Get_MaximumSet_Gen.json | 61 ++ .../FileSystems_Get_MinimumSet_Gen.json} | 31 +- ...ms_ListByResourceGroup_MaximumSet_Gen.json | 65 ++ ...ms_ListByResourceGroup_MinimumSet_Gen.json | 28 +- ...ems_ListBySubscription_MaximumSet_Gen.json | 64 ++ ...ems_ListBySubscription_MinimumSet_Gen.json | 24 +- .../FileSystems_Update_MaximumSet_Gen.json | 86 +++ .../FileSystems_Update_MinimumSet_Gen.json} | 30 +- .../Operations_List_MaximumSet_Gen.json | 28 + .../Operations_List_MinimumSet_Gen.json | 12 + .../Qumulo.Storage.Management/main.tsp | 95 +++ .../Qumulo.Storage.Management/tspconfig.yaml | 13 + ...Systems_CreateOrUpdate_MaximumSet_Gen.json | 2 +- ...Systems_CreateOrUpdate_MinimumSet_Gen.json | 4 +- .../FileSystems_Update_MaximumSet_Gen.json | 2 +- ...Systems_CreateOrUpdate_MaximumSet_Gen.json | 2 +- ...Systems_CreateOrUpdate_MinimumSet_Gen.json | 2 +- .../stable/2024-06-19/Qumulo.Storage.json | 712 ++++++++++++++++++ ...Systems_CreateOrUpdate_MaximumSet_Gen.json | 147 ++++ ...Systems_CreateOrUpdate_MinimumSet_Gen.json | 78 +- .../FileSystems_Delete_MaximumSet_Gen.json | 19 + .../FileSystems_Delete_MinimumSet_Gen.json | 19 + .../FileSystems_Get_MaximumSet_Gen.json | 61 ++ .../FileSystems_Get_MinimumSet_Gen.json} | 31 +- ...ms_ListByResourceGroup_MaximumSet_Gen.json | 65 ++ ...ms_ListByResourceGroup_MinimumSet_Gen.json | 28 +- ...ems_ListBySubscription_MaximumSet_Gen.json | 64 ++ ...ems_ListBySubscription_MinimumSet_Gen.json | 24 +- .../FileSystems_Update_MaximumSet_Gen.json | 86 +++ .../FileSystems_Update_MinimumSet_Gen.json} | 30 +- .../Operations_List_MaximumSet_Gen.json | 28 + .../Operations_List_MinimumSet_Gen.json | 12 + .../liftrqumulo/resource-manager/readme.go.md | 25 + .../liftrqumulo/resource-manager/readme.md | 11 +- .../resource-manager/readme.typescript.md | 26 + .../resource-manager/sdk-suppressions.yaml | 9 + 63 files changed, 2352 insertions(+), 1411 deletions(-) delete mode 100644 specification/liftrqumulo/Qumulo.Management/cadl-project.yaml delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_CreateOrUpdate_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Delete_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Delete_MinimumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Get_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListByResourceGroup_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListBySubscription_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Update_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/Operations_List_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/Operations_List_MinimumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_CreateOrUpdate_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Delete_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Delete_MinimumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Get_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListByResourceGroup_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListBySubscription_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Update_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/Operations_List_MaximumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/Operations_List_MinimumSet_Gen.json delete mode 100644 specification/liftrqumulo/Qumulo.Management/main.cadl delete mode 100644 specification/liftrqumulo/Qumulo.Management/package.json create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/LiftrBase.Storage/main.tsp create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/LiftrBase/main.tsp create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_CreateOrUpdate_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-06-27-preview => Qumulo.Storage.Management/examples/2024-06-19}/FileSystems_CreateOrUpdate_MinimumSet_Gen.json (65%) create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Delete_MaximumSet_Gen.json create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Delete_MinimumSet_Gen.json create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Get_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-10-12-preview/FileSystems_Update_MinimumSet_Gen.json => Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Get_MinimumSet_Gen.json} (65%) create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListByResourceGroup_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-10-12-preview => Qumulo.Storage.Management/examples/2024-06-19}/FileSystems_ListByResourceGroup_MinimumSet_Gen.json (60%) create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListBySubscription_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-10-12-preview => Qumulo.Storage.Management/examples/2024-06-19}/FileSystems_ListBySubscription_MinimumSet_Gen.json (66%) create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Update_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-06-27-preview/FileSystems_Get_MinimumSet_Gen.json => Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Update_MinimumSet_Gen.json} (56%) create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/Operations_List_MaximumSet_Gen.json create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/Operations_List_MinimumSet_Gen.json create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/main.tsp create mode 100644 specification/liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/Qumulo.Storage.json create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-10-12-preview => resource-manager/Qumulo.Storage/stable/2024-06-19/examples}/FileSystems_CreateOrUpdate_MinimumSet_Gen.json (65%) create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Delete_MaximumSet_Gen.json create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Delete_MinimumSet_Gen.json create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Get_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-06-27-preview/FileSystems_Update_MinimumSet_Gen.json => resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Get_MinimumSet_Gen.json} (65%) create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListByResourceGroup_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-06-27-preview => resource-manager/Qumulo.Storage/stable/2024-06-19/examples}/FileSystems_ListByResourceGroup_MinimumSet_Gen.json (60%) create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListBySubscription_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-06-27-preview => resource-manager/Qumulo.Storage/stable/2024-06-19/examples}/FileSystems_ListBySubscription_MinimumSet_Gen.json (66%) create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Update_MaximumSet_Gen.json rename specification/liftrqumulo/{Qumulo.Management/examples/2022-10-12-preview/FileSystems_Get_MinimumSet_Gen.json => resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Update_MinimumSet_Gen.json} (56%) create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/Operations_List_MaximumSet_Gen.json create mode 100644 specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/Operations_List_MinimumSet_Gen.json create mode 100644 specification/liftrqumulo/resource-manager/sdk-suppressions.yaml diff --git a/specification/liftrqumulo/Qumulo.Management/cadl-project.yaml b/specification/liftrqumulo/Qumulo.Management/cadl-project.yaml deleted file mode 100644 index 9e8b3c8db87d..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/cadl-project.yaml +++ /dev/null @@ -1,4 +0,0 @@ -emitters: - "@azure-tools/cadl-autorest": - output-file: Qumulo.Storage.json - examples-directory: ./examples \ No newline at end of file diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_CreateOrUpdate_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_CreateOrUpdate_MaximumSet_Gen.json deleted file mode 100644 index 6d4f055f6856..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_CreateOrUpdate_MaximumSet_Gen.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg", - "resource": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "adminPassword": "ekceujoecaashtjlsgcymnrdozk", - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "identity": { - "type": "None", - "userAssignedIdentities": { - "key4522": {} - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq" - } - }, - "responses": { - "200": { - "body": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - }, - "201": { - "headers": { - "Azure-AsyncOperation": "https://contoso.com/operationstatus" - }, - "body": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Delete_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Delete_MaximumSet_Gen.json deleted file mode 100644 index ae1bd6ade2ee..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Delete_MaximumSet_Gen.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg" - }, - "responses": { - "200": {}, - "202": { - "headers": { - "Azure-AsyncOperation": "https://contoso.com/operationstatus" - } - }, - "204": {} - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Delete_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Delete_MinimumSet_Gen.json deleted file mode 100644 index ae1bd6ade2ee..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Delete_MinimumSet_Gen.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg" - }, - "responses": { - "200": {}, - "202": { - "headers": { - "Azure-AsyncOperation": "https://contoso.com/operationstatus" - } - }, - "204": {} - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Get_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Get_MaximumSet_Gen.json deleted file mode 100644 index 1995c8c802aa..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Get_MaximumSet_Gen.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg" - }, - "responses": { - "200": { - "body": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListByResourceGroup_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListByResourceGroup_MaximumSet_Gen.json deleted file mode 100644 index 365e4a9a8fbd..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListByResourceGroup_MaximumSet_Gen.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - ], - "nextLink": "eisxspfvczpkjjgfpzdydcjrogc" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListBySubscription_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListBySubscription_MaximumSet_Gen.json deleted file mode 100644 index 24350db24265..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListBySubscription_MaximumSet_Gen.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "ulseeqylxb" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - ], - "nextLink": "eisxspfvczpkjjgfpzdydcjrogc" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Update_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Update_MaximumSet_Gen.json deleted file mode 100644 index c9109445f9c3..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Update_MaximumSet_Gen.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg", - "properties": { - "identity": { - "type": "None", - "userAssignedIdentities": { - "key4522": {} - } - }, - "tags": { - "key7534": "jsgqvqbagquvxowbrkanyhzvo" - }, - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "vjfirtaljehawmflyfianw", - "clusterLoginUrl": "adabmuthwrbjshzfbo", - "privateIPs": [ - "eugjqbaoucgjsopzfrq" - ] - } - } - }, - "responses": { - "200": { - "body": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "eugjqbaoucgjsopzfrq" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/Operations_List_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/Operations_List_MaximumSet_Gen.json deleted file mode 100644 index ada0228046a7..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/Operations_List_MaximumSet_Gen.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "runmssufdtztqwcjrxyuyodlzbxidp", - "isDataAction": true, - "display": { - "provider": "e", - "resource": "cgzkjnfpkvddogcszpdn", - "operation": "fgyvgifprfxdgyqdbglrysjjsozm", - "description": "cnjdpucbtzreoihwdqnkprk" - }, - "origin": "user", - "actionType": "Internal" - } - ], - "nextLink": "mzpodd" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/Operations_List_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/Operations_List_MinimumSet_Gen.json deleted file mode 100644 index 699e981746c6..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/Operations_List_MinimumSet_Gen.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parameters": { - "api-version": "2022-06-27-preview" - }, - "responses": { - "200": { - "body": {} - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_CreateOrUpdate_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_CreateOrUpdate_MaximumSet_Gen.json deleted file mode 100644 index 8f2441ddd7dc..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_CreateOrUpdate_MaximumSet_Gen.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg", - "resource": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "adminPassword": "ekceujoecaashtjlsgcymnrdozk", - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "identity": { - "type": "None", - "userAssignedIdentities": { - "key4522": {} - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq" - } - }, - "responses": { - "200": { - "body": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - }, - "201": { - "headers": { - "Azure-AsyncOperation": "https://contoso.com/operationstatus" - }, - "body": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Delete_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Delete_MaximumSet_Gen.json deleted file mode 100644 index 575ca93c4a2f..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Delete_MaximumSet_Gen.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg" - }, - "responses": { - "200": {}, - "202": { - "headers": { - "Azure-AsyncOperation": "https://contoso.com/operationstatus" - } - }, - "204": {} - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Delete_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Delete_MinimumSet_Gen.json deleted file mode 100644 index 575ca93c4a2f..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Delete_MinimumSet_Gen.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg" - }, - "responses": { - "200": {}, - "202": { - "headers": { - "Azure-AsyncOperation": "https://contoso.com/operationstatus" - } - }, - "204": {} - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Get_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Get_MaximumSet_Gen.json deleted file mode 100644 index e3f1024a760a..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Get_MaximumSet_Gen.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg" - }, - "responses": { - "200": { - "body": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListByResourceGroup_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListByResourceGroup_MaximumSet_Gen.json deleted file mode 100644 index 8aeb9616b50a..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListByResourceGroup_MaximumSet_Gen.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - ], - "nextLink": "eisxspfvczpkjjgfpzdydcjrogc" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListBySubscription_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListBySubscription_MaximumSet_Gen.json deleted file mode 100644 index 21e9e6ebe463..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListBySubscription_MaximumSet_Gen.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "ulseeqylxb" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "kslguxrwbwkrj" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - ], - "nextLink": "eisxspfvczpkjjgfpzdydcjrogc" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Update_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Update_MaximumSet_Gen.json deleted file mode 100644 index 32e2b3e5c80d..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Update_MaximumSet_Gen.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "ulseeqylxb", - "resourceGroupName": "rgQumulo", - "fileSystemName": "nauwwbfoqehgbhdsmkewoboyxeqg", - "properties": { - "identity": { - "type": "None", - "userAssignedIdentities": { - "key4522": {} - } - }, - "tags": { - "key7534": "jsgqvqbagquvxowbrkanyhzvo" - }, - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "vjfirtaljehawmflyfianw", - "clusterLoginUrl": "adabmuthwrbjshzfbo", - "privateIPs": [ - "eugjqbaoucgjsopzfrq" - ] - } - } - }, - "responses": { - "200": { - "body": { - "properties": { - "marketplaceDetails": { - "marketplaceSubscriptionId": "ujrcqvxfnhxxheoth", - "planId": "x", - "offerId": "eiyhbmpwgezcmzrrfoiskuxlcvwojf", - "publisherId": "wfmokfdjbwpjhz", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" - }, - "provisioningState": "Accepted", - "userDetails": { - "email": "viptslwulnpaupfljvnjeq" - }, - "delegatedSubnetId": "neqctctqdmjezfgt", - "clusterLoginUrl": "jjqhgevy", - "privateIPs": [ - "eugjqbaoucgjsopzfrq" - ], - "storageSku": "Standard", - "initialCapacity": 9, - "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" - }, - "systemData": { - "createdBy": "mtdhqooysjhueaojwpmvophkgntl", - "createdByType": "User", - "createdAt": "2022-10-14T04:40:17.991Z", - "lastModifiedBy": "jcywglomzuamsxltnoegdrkzlscxl", - "lastModifiedByType": "User", - "lastModifiedAt": "2022-10-14T04:40:17.991Z" - }, - "identity": { - "principalId": "11111111-1111-1111-1111-111111111111", - "tenantId": "11111111-1111-1111-1111-111111111111", - "type": "None", - "userAssignedIdentities": { - "key4522": { - "principalId": "11111111-1111-1111-1111-111111111111", - "clientId": "11111111-1111-1111-1111-111111111111" - } - } - }, - "tags": { - "key6565": "cgdhmupta" - }, - "location": "przdlsmlzsszphnixq", - "id": "tvelgpobdtazrweunifqzaxkgjauyx", - "name": "bii", - "type": "qtvxrqwpoistduq" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/Operations_List_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/Operations_List_MaximumSet_Gen.json deleted file mode 100644 index 83ad780508a5..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/Operations_List_MaximumSet_Gen.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "runmssufdtztqwcjrxyuyodlzbxidp", - "isDataAction": true, - "display": { - "provider": "e", - "resource": "cgzkjnfpkvddogcszpdn", - "operation": "fgyvgifprfxdgyqdbglrysjjsozm", - "description": "cnjdpucbtzreoihwdqnkprk" - }, - "origin": "user", - "actionType": "Internal" - } - ], - "nextLink": "mzpodd" - } - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/Operations_List_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/Operations_List_MinimumSet_Gen.json deleted file mode 100644 index 1f4353e91f85..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/Operations_List_MinimumSet_Gen.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parameters": { - "api-version": "2022-10-12-preview" - }, - "responses": { - "200": { - "body": {} - } - } -} diff --git a/specification/liftrqumulo/Qumulo.Management/main.cadl b/specification/liftrqumulo/Qumulo.Management/main.cadl deleted file mode 100644 index 2a589452176b..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/main.cadl +++ /dev/null @@ -1,179 +0,0 @@ -import "@cadl-lang/rest"; -import "@azure-tools/cadl-autorest"; -import "@cadl-lang/versioning"; -import "@azure-tools/cadl-azure-resource-manager"; -import "@azure-tools/cadl-providerhub"; - -using Cadl.Versioning; -using Azure.ResourceManager; -using Cadl.Http; -using Cadl.Rest; - -@armProviderNamespace -@service({title:"Qumulo.Storage"}) -@versionedDependency([[Versions.v2022_06_27_preview,Azure.ResourceManager.Versions.v1_0_Preview_1], [Versions.v2022_10_12_preview,Azure.ResourceManager.Versions.v1_0_Preview_1]]) -@versioned(Versions) -namespace Qumulo.Storage; - -@doc("Storage Sku") -enum StorageSku { - - @doc("Standard Storage Sku") - "Standard", - - @doc("Performance Storage Sku") - "Performance" -} - -#suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" -enum Versions { - v2022_06_27_preview: "2022-06-27-preview", - v2022_10_12_preview: "2022-10-12-preview", -} - -@doc("Qumulo File System resource") -model FileSystemResource is TrackedResource { - - @key("fileSystemName") - @segment("fileSystems") - - @doc("Name of the storage resource") - name: string; - - ...ManagedServiceIdentity -} - -@armResourceOperations -interface FileSystems extends ResourceOperations { -} - -@doc("Properties specific to the Qumulo File System resource") -model FileSystemResourceProperties { - - @doc("Azure Subscription Id") - subscriptionId: string; - - @doc("Marketplace details") - marketplaceDetails? : MarketplaceDetails; - - @doc("Provisioning State of the resource") - provisioningState: ProvisioningState; - - @doc("User Details") - userDetails: UserDetails; - - @doc("Company Details") - companyDetails: CompanyDetails; - - @doc("Delegated subnet id for Vnet injection") - delegatedSubnetId: string; - - @doc("Qumulo admin dashboard Url") - clusterLoginUrl: string; - - @doc("List of eNIC IPs") - privateIPs: string[]; - - @added(Versions.v2022_10_12_preview) - @doc("Initial administrator password of the resource") - @secret - adminPassword: string; - - @added(Versions.v2022_10_12_preview) - @doc("Storage capacity in TB") - initialCapacity: int32; - - @added(Versions.v2022_10_12_preview) - @doc("Availability zone") - availabilityZone: string; - - @added(Versions.v2022_10_12_preview) - @doc("Storage Sku") - storageSku: StorageSku; -} - -@doc("MarketplaceDetails of Qumulo FileSystem resource") -model MarketplaceDetails{ - @doc("Marketplace Subscription Id") - marketplaceSubscriptionId: string; - - @doc("Plan Id") - planId: string; - - @doc("Offer Id") - offerId: string; - - @doc("Publisher Id") - publisherId: string; - - @doc("Marketplace subscription status") - marketplaceSubscriptionStatus: MarketplaceSubscriptionStatus; -} - -@doc("User Details of Qumulo FileSystem resource") -model UserDetails{ - - @doc("First name") - firstName?: string; - - @doc("Last name") - lastName?: string; - - @doc("User Email") - email: string; - - @doc("Alternate Email address") - alternateEmail?: string; - - @doc("UPN of user") - upn: string; - - @doc("Address of user") - address?: string; - - @doc("Contact phone number") - contactPhoneNumber?: string; -} - -@doc("Company details of Qumulo FileSystem resource") -model CompanyDetails{ - - @doc("Company name") - companyName: string; - - @doc("Office Address") - officeAddress?: string; - - @doc("Country of operation") - country: string; - - @doc("Domain of the company") - domain: string; - - @doc("Business of the company") - business?: string; - - @doc("Number of Employees") - numberOfEmployees: int32; -} - -@doc("Marketplace subscription status of the storage resource") -enum MarketplaceSubscriptionStatus{ - "PendingFulfillmentStart", - "Subscribed", - "Suspended", - "Unsubscribed", -} - -@doc("Provisioning State of the storage resource") -enum ProvisioningState { - "Accepted", - "Creating", - "Updating", - "Deleting", - "Succeeded", - "Failed", - "Canceled", - "Deleted", - "NotSpecified" -} diff --git a/specification/liftrqumulo/Qumulo.Management/package.json b/specification/liftrqumulo/Qumulo.Management/package.json deleted file mode 100644 index 7a8bd56fd1f7..000000000000 --- a/specification/liftrqumulo/Qumulo.Management/package.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "name": "cadl", - "version": "1.0.0", - "description": "npm packages required to run cadl", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "@azure-tools/cadl-autorest": "^0.22.0", - "@azure-tools/cadl-azure-core": "^0.9.0", - "@azure-tools/cadl-azure-resource-manager": "^0.12.0", - "@azure-tools/cadl-providerhub": "^0.23.0", - "@cadl-lang/rest": "^0.19.0", - "@cadl-lang/versioning": "^0.10.0" - }, - "devDependencies": {} -} diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/LiftrBase.Storage/main.tsp b/specification/liftrqumulo/Qumulo.Storage.Management/LiftrBase.Storage/main.tsp new file mode 100644 index 000000000000..f651932a9915 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/LiftrBase.Storage/main.tsp @@ -0,0 +1,137 @@ +import "./../LiftrBase/main.tsp"; + +import "@typespec/openapi"; +import "@typespec/http"; +import "@typespec/rest"; +import "@typespec/versioning"; + +using Azure.ResourceManager; +using LiftrBase; +using TypeSpec.Http; +using TypeSpec.OpenAPI; +using TypeSpec.Rest; +using TypeSpec.Versioning; +using TypeSpec.Reflection; +using Azure.ResourceManager.Foundations; + +@versioned(LiftrBase.Storage.Versions) +@armLibraryNamespace +namespace LiftrBase.Storage; + +@doc("Supported versions for LiftrBase.Storage resource model") +enum Versions { + @doc("Dependent on Azure.ResourceManager.Versions.v1_0_Preview_1 and LiftrBase.Versions.v1_preview") + @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) + @useDependency(LiftrBase.Versions.v2_preview) + @armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v3) + v2_preview: "2024-02-01-preview", +} + +/** + * Properties specific to the Qumulo File System resource + */ +model FileSystemResourceProperties { + /** + * Marketplace details + */ + marketplaceDetails: MarketplaceDetails; + + /** + * Provisioning State of the resource + */ + @visibility("read") + provisioningState?: ProvisioningState; + + /** + * Storage Sku + */ + storageSku: string; + + /** + * User Details + */ + userDetails: UserDetails; + + /** + * Delegated subnet id for Vnet injection + */ + delegatedSubnetId: string; + + /** + * File system Id of the resource + */ + clusterLoginUrl?: string; + + /** + * Private IPs of the resource + */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "This is the correct name" + privateIPs?: string[]; + + /** + * Initial administrator password of the resource + */ + @extension("x-ms-secret", true) + adminPassword: string; + + /** + * Availability zone + */ + availabilityZone?: string; +} + +/** + * The type used for update operations of the FileSystemResource. + */ +model FileSystemResourceUpdate { + /** + * The managed service identities assigned to this resource. + */ + identity?: Azure.ResourceManager.CommonTypes.ManagedServiceIdentity; + + /** + * Resource tags. + */ + tags?: Record; + + /** + * The updatable properties of the FileSystemResource. + */ + properties?: FileSystemResourceUpdateProperties; +} + +/** + * The updatable properties of the FileSystemResource. + */ +model FileSystemResourceUpdateProperties { + /** + * Marketplace details + */ + marketplaceDetails?: MarketplaceDetails; + + /** + * User Details + */ + userDetails?: UserDetails; + + /** + * Delegated subnet id for Vnet injection + */ + delegatedSubnetId?: string; +} + +@Azure.ResourceManager.Private.armResourceInternal(FileSystemResourceProperties) +model FileSystemResource + is Azure.ResourceManager.TrackedResource { + /** + * Name of the File System resource + */ + @path + @key("fileSystemName") + @segment("fileSystems") + @visibility("read") + @pattern("^[a-zA-Z0-9_-]*$") + name: string; + + ...Azure.ResourceManager.ManagedServiceIdentityProperty; +} diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/LiftrBase/main.tsp b/specification/liftrqumulo/Qumulo.Storage.Management/LiftrBase/main.tsp new file mode 100644 index 000000000000..02ba7a0b9f24 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/LiftrBase/main.tsp @@ -0,0 +1,139 @@ +import "@azure-tools/typespec-autorest"; +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/rest"; +import "@typespec/openapi"; +import "@typespec/versioning"; + +using Azure.ResourceManager; +using TypeSpec.Versioning; +using TypeSpec.Reflection; +using TypeSpec.OpenAPI; + +@versioned(LiftrBase.Versions) +namespace LiftrBase; + +@doc("Supported versions for LiftrBase resource model") +enum Versions { + @doc("Dependent on Azure.ResourceManager.Versions.v1_0_Preview_1") + @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) + @armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v3) + v2_preview: "2024-02-01-preview", +} + +/** + * Marketplace subscription status of the file system resource + */ +union MarketplaceSubscriptionStatus { + /** + * Fulfillment has not started + */ + PendingFulfillmentStart: "PendingFulfillmentStart", + + /** + * Marketplace offer is subscribed + */ + Subscribed: "Subscribed", + + /** + * Marketplace offer is suspended because of non payment + */ + Suspended: "Suspended", + + /** + * Marketplace offer is unsubscribed + */ + Unsubscribed: "Unsubscribed", + + string, +} + +@doc("MarketplaceDetails of Qumulo FileSystem resource") +model MarketplaceDetails { + /** + * Marketplace Subscription Id + */ + marketplaceSubscriptionId?: string; + + /** + * Plan Id + */ + planId: string; + + /** + * Offer Id + */ + offerId: string; + + /** + * Publisher Id + */ + publisherId?: string; + + /** + * Term Unit + */ + termUnit?: string; + + /** + * Marketplace subscription status + */ + @visibility("read") + marketplaceSubscriptionStatus?: MarketplaceSubscriptionStatus; +} + +@doc("User Details of Qumulo FileSystem resource") +model UserDetails { + /** + * User Email + */ + @extension("x-ms-secret", true) + email: string; +} + +/** + * Provisioning State of the File system resource + */ +union ProvisioningState { + /** + * File system resource creation request accepted + */ + Accepted: "Accepted", + + /** + * File system resource creation started + */ + Creating: "Creating", + + /** + * File system resource is being updated + */ + Updating: "Updating", + + /** + * File system resource deletion started + */ + Deleting: "Deleting", + + /** + * File system resource creation successful + */ + Succeeded: "Succeeded", + + /** + * File system resource creation failed + */ + Failed: "Failed", + + /** + * File system resource creation canceled + */ + Canceled: "Canceled", + + /** + * File system resource is deleted + */ + Deleted: "Deleted", + + string, +} diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_CreateOrUpdate_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_CreateOrUpdate_MaximumSet_Gen.json new file mode 100644 index 000000000000..0a5033a3a8a9 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_CreateOrUpdate_MaximumSet_Gen.json @@ -0,0 +1,147 @@ +{ + "title": "FileSystems_CreateOrUpdate", + "operationId": "FileSystems_CreateOrUpdate", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "hfcmtgaes", + "resource": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "storageSku": "yhyzby", + "userDetails": { + "email": "aqsnzyroo" + }, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "adminPassword": "fakeTestSecretPlaceholder", + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "type": "None", + "userAssignedIdentities": { + "key7679": {} + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + }, + "201": { + "headers": { + "Retry-After": 10, + "Azure-AsyncOperation": "https://contoso.com/operationstatus" + }, + "body": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_CreateOrUpdate_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_CreateOrUpdate_MinimumSet_Gen.json similarity index 65% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_CreateOrUpdate_MinimumSet_Gen.json rename to specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_CreateOrUpdate_MinimumSet_Gen.json index c84801309bb5..53811b13e3cd 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_CreateOrUpdate_MinimumSet_Gen.json +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_CreateOrUpdate_MinimumSet_Gen.json @@ -1,77 +1,71 @@ { "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "aaaaaaaaaaaaaaaaaaaaaaaa", - "resourceGroupName": "rgopenapi", + "api-version": "2024-06-19", "fileSystemName": "aaaaaaaa", "resource": { + "location": "aaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "adminPassword": "fakeTestSecretPlaceholder", + "delegatedSubnetId": "aaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaa", - "planId": "aaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaaaaaaaaaaaaaaaaaa", - "publisherId": "aa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaa" }, - "provisioningState": "Accepted", - "userDetails": { - "email": "aaaaaaaaaaaaaaaaaaaaaaa" - }, - "delegatedSubnetId": "aaaaaaaaaa", - "adminPassword": "ekceujoecaashtjlsgcymnrdozk", "storageSku": "Standard", - "initialCapacity": 9 - }, - "location": "aaaaaaaaaaaaaaaaaaaaaaaaa" - } + "userDetails": { + "email": "viptslwulnpaupfljvnjeq" + } + } + }, + "resourceGroupName": "rgopenapi", + "subscriptionId": "aaaaaaaaaaaaaaaaaaaaaaaa" }, "responses": { - "201": { - "headers": { - "Azure-AsyncOperation": "https://foo.com/operationstatus" - }, + "200": { "body": { "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaa", - "planId": "aaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaaaaaaaaaaaaaaaaaa", - "publisherId": "aa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaa", + "publisherId": "aa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aaaaaaaaaaaaaaaaaaaaaaa" - }, - "delegatedSubnetId": "aaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "location": "aaaaaaaaa" + "userDetails": {} + } } }, - "200": { + "201": { "body": { "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaa", - "planId": "aaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaaaaaaaaaaaaaaaaaa", - "publisherId": "aa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaa", + "publisherId": "aa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aaaaaaaaaaaaaaaaaaaaaaa" - }, - "delegatedSubnetId": "aaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "location": "aaaaaaaaa" + "userDetails": {} + } + }, + "headers": { + "Retry-After": 10, + "Azure-AsyncOperation": "https://foo.com/operationstatus" } } - } + }, + "operationId": "FileSystems_CreateOrUpdate", + "title": "FileSystems_CreateOrUpdate_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Delete_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Delete_MaximumSet_Gen.json new file mode 100644 index 000000000000..ad1724124896 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Delete_MaximumSet_Gen.json @@ -0,0 +1,19 @@ +{ + "title": "FileSystems_Delete", + "operationId": "FileSystems_Delete", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "xoschzkccroahrykedlvbbnsddq" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 10, + "location": "https://contoso.com/operationstatus" + } + }, + "204": {} + } +} diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Delete_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Delete_MinimumSet_Gen.json new file mode 100644 index 000000000000..d28e0ae5ed92 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Delete_MinimumSet_Gen.json @@ -0,0 +1,19 @@ +{ + "title": "FileSystems_Delete_MinimumSet_Gen", + "operationId": "FileSystems_Delete", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "jgtskkiplquyrlkaxvhdg" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 10, + "location": "https://contoso.com/operationstatus" + } + }, + "204": {} + } +} diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Get_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Get_MaximumSet_Gen.json new file mode 100644 index 000000000000..5b60318e3d84 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Get_MaximumSet_Gen.json @@ -0,0 +1,61 @@ +{ + "title": "FileSystems_Get", + "operationId": "FileSystems_Get", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "sihbehcisdqtqqyfiewiiaphgh" + }, + "responses": { + "200": { + "body": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Update_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Get_MinimumSet_Gen.json similarity index 65% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Update_MinimumSet_Gen.json rename to specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Get_MinimumSet_Gen.json index 9ab01d911d49..d24f92bc0333 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Update_MinimumSet_Gen.json +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Get_MinimumSet_Gen.json @@ -1,33 +1,32 @@ { "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "aaaaaaa", - "resourceGroupName": "rgQumulo", + "api-version": "2024-06-19", "fileSystemName": "aaaaaaaaaaaaaaaaa", - "properties": {} + "resourceGroupName": "rgQumulo", + "subscriptionId": "aaaaaaa" }, "responses": { "200": { "body": { + "name": "aaaaa", + "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaaaaaa", - "planId": "aaaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaa", - "publisherId": "aaaaaaaaaaaaaaaaaaaa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaaa", + "termUnit": "zxv" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aa" - }, - "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "name": "aaaaa", - "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "userDetails": {} + } } } - } + }, + "operationId": "FileSystems_Get", + "title": "FileSystems_Get_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListByResourceGroup_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListByResourceGroup_MaximumSet_Gen.json new file mode 100644 index 000000000000..bbecaa117da0 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListByResourceGroup_MaximumSet_Gen.json @@ -0,0 +1,65 @@ +{ + "title": "FileSystems_ListByResourceGroup", + "operationId": "FileSystems_ListByResourceGroup", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + ], + "nextLink": "https://microsoft.com/a" + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListByResourceGroup_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListByResourceGroup_MinimumSet_Gen.json similarity index 60% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListByResourceGroup_MinimumSet_Gen.json rename to specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListByResourceGroup_MinimumSet_Gen.json index 4476c487281b..835ecfb71204 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListByResourceGroup_MinimumSet_Gen.json +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListByResourceGroup_MinimumSet_Gen.json @@ -1,36 +1,34 @@ { "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "aaaaaaa", - "resourceGroupName": "rgQumulo" + "api-version": "2024-06-19", + "resourceGroupName": "rgQumulo", + "subscriptionId": "aaaaaaa" }, "responses": { "200": { "body": { "value": [ { + "name": "aaaaa", "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaaaaaa", - "planId": "aaaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaa", - "publisherId": "aaaaaaaaaaaaaaaaaaaa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaaa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aa" - }, - "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "name": "aaaaa", - "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "userDetails": {} + } } ] } } - } + }, + "operationId": "FileSystems_ListByResourceGroup", + "title": "FileSystems_ListByResourceGroup_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListBySubscription_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListBySubscription_MaximumSet_Gen.json new file mode 100644 index 000000000000..2b22140e5c1f --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListBySubscription_MaximumSet_Gen.json @@ -0,0 +1,64 @@ +{ + "title": "FileSystems_ListBySubscription", + "operationId": "FileSystems_ListBySubscription", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + ], + "nextLink": "https://microsoft.com/a" + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListBySubscription_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListBySubscription_MinimumSet_Gen.json similarity index 66% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListBySubscription_MinimumSet_Gen.json rename to specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListBySubscription_MinimumSet_Gen.json index 711edba5404f..4a9979aab1c9 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_ListBySubscription_MinimumSet_Gen.json +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_ListBySubscription_MinimumSet_Gen.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-10-12-preview", + "api-version": "2024-06-19", "subscriptionId": "aaaaaaa" }, "responses": { @@ -8,28 +8,26 @@ "body": { "value": [ { + "name": "aaaaa", "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaaaaaa", - "planId": "aaaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaa", - "publisherId": "aaaaaaaaaaaaaaaaaaaa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaaa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aa" - }, - "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "name": "aaaaa", - "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "userDetails": {} + } } ] } } - } + }, + "operationId": "FileSystems_ListBySubscription", + "title": "FileSystems_ListBySubscription_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Update_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Update_MaximumSet_Gen.json new file mode 100644 index 000000000000..c14f02923019 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Update_MaximumSet_Gen.json @@ -0,0 +1,86 @@ +{ + "title": "FileSystems_Update", + "operationId": "FileSystems_Update", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "ahpixnvykleksjlr", + "properties": { + "identity": { + "type": "None", + "userAssignedIdentities": { + "key7679": {} + } + }, + "tags": { + "key357": "ztkkvhfia" + }, + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "userDetails": { + "email": "aqsnzyroo" + }, + "delegatedSubnetId": "bqaryqsjlackxphpmzffgoqsvm" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Get_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Update_MinimumSet_Gen.json similarity index 56% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Get_MinimumSet_Gen.json rename to specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Update_MinimumSet_Gen.json index f38618a893af..2199c9f27d4d 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Get_MinimumSet_Gen.json +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/FileSystems_Update_MinimumSet_Gen.json @@ -1,33 +1,31 @@ { "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "aaaaaaa", + "api-version": "2024-06-19", + "fileSystemName": "aaaaaaaaaaaaaaaaa", + "properties": {}, "resourceGroupName": "rgQumulo", - "fileSystemName": "aaaaaaaaaaaaaaaaa" + "subscriptionId": "aaaaaaa" }, "responses": { "200": { "body": { - "id": "aaaaaaaaaaaaaaaaa", + "name": "aaaaa", + "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaaaaaa", - "planId": "aaaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaa", - "publisherId": "aaaaaaaaaaaaaaaaaaaa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaaa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aa" - }, - "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "name": "aaaaa", - "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "userDetails": {} + } } } - } + }, + "operationId": "FileSystems_Update", + "title": "FileSystems_Update_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/Operations_List_MaximumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/Operations_List_MaximumSet_Gen.json new file mode 100644 index 000000000000..1eb2670e6c1f --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/Operations_List_MaximumSet_Gen.json @@ -0,0 +1,28 @@ +{ + "title": "Operations_List", + "operationId": "Operations_List", + "parameters": { + "api-version": "2024-06-19" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "melhpzamnyx", + "isDataAction": true, + "display": { + "provider": "ilyrhd", + "resource": "vjz", + "operation": "ayfoeuuyhtwjafroqzimyujr", + "description": "vodhl" + }, + "origin": "user", + "actionType": "Internal" + } + ], + "nextLink": "vxtunikmzmz" + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/Operations_List_MinimumSet_Gen.json b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/Operations_List_MinimumSet_Gen.json new file mode 100644 index 000000000000..4f4302e48074 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/examples/2024-06-19/Operations_List_MinimumSet_Gen.json @@ -0,0 +1,12 @@ +{ + "title": "Operations_List_MinimumSet_Gen", + "operationId": "Operations_List", + "parameters": { + "api-version": "2024-06-19" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/main.tsp b/specification/liftrqumulo/Qumulo.Storage.Management/main.tsp new file mode 100644 index 000000000000..2719ae4e0cc8 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/main.tsp @@ -0,0 +1,95 @@ +import "./LiftrBase.Storage/main.tsp"; + +import "@typespec/rest"; +import "@typespec/openapi"; +import "@typespec/versioning"; +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; + +using TypeSpec.Rest; +using TypeSpec.OpenAPI; +using TypeSpec.Http; +using Azure.ResourceManager.Foundations; +using Azure.Core; +using Azure.ResourceManager; +using TypeSpec.Versioning; +using LiftrBase.Storage; +using LiftrBase; + +@armProviderNamespace +@useLibraryNamespace(LiftrBase.Storage) +@service({ + title: "Qumulo.Storage", +}) +@versioned(Versions) +namespace Qumulo.Storage; + +/** + * The available API versions. + */ +enum Versions { + /** + * The 2024-06-19 Stable API version. + */ + @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) + @useDependency(LiftrBase.Versions.v2_preview) + @useDependency(LiftrBase.Storage.Versions.v2_preview) + @armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v3) + v2_stable: "2024-06-19", +} + +interface Operations extends Azure.ResourceManager.Operations {} + +@armResourceOperations +interface FileSystems { + /** + * Get a FileSystemResource + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("FileSystems_Get") + get is ArmResourceRead; + + /** + * Create a FileSystemResource + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("FileSystems_CreateOrUpdate") + createOrUpdate is ArmResourceCreateOrReplaceAsync< + FileSystemResource, + BaseParameters, + ArmAsyncOperationHeader & Azure.Core.Foundations.RetryAfterHeader + >; + + /** + * Update a FileSystemResource + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @parameterVisibility + @operationId("FileSystems_Update") + update is ArmCustomPatchSync; + + /** + * Delete a FileSystemResource + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("FileSystems_Delete") + delete is ArmResourceDeleteWithoutOkAsync< + FileSystemResource, + BaseParameters, + ArmCombinedLroHeaders & Azure.Core.Foundations.RetryAfterHeader + >; + + /** + * List FileSystemResource resources by resource group + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("FileSystems_ListByResourceGroup") + listByResourceGroup is ArmResourceListByParent; + + /** + * List FileSystemResource resources by subscription ID + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("FileSystems_ListBySubscription") + listBySubscription is ArmListBySubscription; +} diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml b/specification/liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml new file mode 100644 index 000000000000..1934664bb598 --- /dev/null +++ b/specification/liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml @@ -0,0 +1,13 @@ +output-dir: "{project-root}/" +emit: + - "@azure-tools/typespec-autorest" +options: + "@azure-tools/typespec-autorest": + use-read-only-status-schema: true + emitter-output-dir: "{project-root}/.." + azure-resource-provider-folder: "resource-manager" + output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/Qumulo.Storage.json" + examples-directory: "{project-root}/examples" +linter: + extends: + - "@azure-tools/typespec-azure-rulesets/resource-manager" diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json index 83d7b455a14b..605fc541f461 100644 --- a/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json @@ -22,7 +22,7 @@ "privateIPs": [ "kslguxrwbwkrj" ], - "adminPassword": "ekceujoecaashtjlsgcymnrdozk", + "adminPassword": "fakeTestSecretPlaceholder", "storageSku": "Standard", "initialCapacity": 9, "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json index 8e5bb670ce51..fb3681f0ef7f 100644 --- a/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json @@ -15,10 +15,10 @@ }, "provisioningState": "Accepted", "userDetails": { - "email": "aaaaaaaaaaaaaaaaaaaaaaa" + "email": "viptslwulnpaupfljvnjeq" }, "delegatedSubnetId": "aaaaaaaaaa", - "adminPassword": "ekceujoecaashtjlsgcymnrdozk", + "adminPassword": "fakeTestSecretPlaceholder", "storageSku": "Standard", "initialCapacity": 9 }, diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_Update_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_Update_MaximumSet_Gen.json index acded1b38245..63bf8a770f81 100644 --- a/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_Update_MaximumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/preview/2022-10-12-preview/examples/FileSystems_Update_MaximumSet_Gen.json @@ -23,7 +23,7 @@ "marketplaceSubscriptionStatus": "PendingFulfillmentStart" }, "userDetails": { - "email": "viptslwulnpaupfljvnjeq" + "email": "aa" }, "delegatedSubnetId": "vjfirtaljehawmflyfianw", "clusterLoginUrl": "adabmuthwrbjshzfbo", diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2022-10-12/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2022-10-12/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json index d7c51ac8fb36..53305907f1ca 100644 --- a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2022-10-12/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2022-10-12/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json @@ -22,7 +22,7 @@ "privateIPs": [ "kslguxrwbwkrj" ], - "adminPassword": "ekceujoecaashtjlsgcymnrdozk", + "adminPassword": "fakeTestSecretPlaceholder", "storageSku": "Standard", "initialCapacity": 9, "availabilityZone": "maseyqhlnhoiwbabcqabtedbjpip" diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2022-10-12/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2022-10-12/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json index deebbcd793b1..e706084b3a6c 100644 --- a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2022-10-12/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2022-10-12/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json @@ -18,7 +18,7 @@ "email": "viptslwulnpaupfljvnjeq" }, "delegatedSubnetId": "aaaaaaaaaa", - "adminPassword": "ekceujoecaashtjlsgcymnrdozk", + "adminPassword": "fakeTestSecretPlaceholder", "storageSku": "Standard", "initialCapacity": 9 }, diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/Qumulo.Storage.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/Qumulo.Storage.json new file mode 100644 index 000000000000..d9d171c9c8fb --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/Qumulo.Storage.json @@ -0,0 +1,712 @@ +{ + "swagger": "2.0", + "info": { + "title": "Qumulo.Storage", + "version": "2024-06-19", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "tags": [ + { + "name": "Operations" + }, + { + "name": "FileSystems" + } + ], + "paths": { + "/providers/Qumulo.Storage/operations": { + "get": { + "operationId": "Operations_List", + "tags": [ + "Operations" + ], + "description": "List the operations for the provider", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List_MaximumSet_Gen.json" + }, + "Operations_List_MinimumSet_Gen": { + "$ref": "./examples/Operations_List_MinimumSet_Gen.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Qumulo.Storage/fileSystems": { + "get": { + "operationId": "FileSystems_ListBySubscription", + "tags": [ + "FileSystems" + ], + "description": "List FileSystemResource resources by subscription ID", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileSystemResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FileSystems_ListBySubscription": { + "$ref": "./examples/FileSystems_ListBySubscription_MaximumSet_Gen.json" + }, + "FileSystems_ListBySubscription_MinimumSet_Gen": { + "$ref": "./examples/FileSystems_ListBySubscription_MinimumSet_Gen.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Qumulo.Storage/fileSystems": { + "get": { + "operationId": "FileSystems_ListByResourceGroup", + "tags": [ + "FileSystems" + ], + "description": "List FileSystemResource resources by resource group", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/FileSystemResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FileSystems_ListByResourceGroup": { + "$ref": "./examples/FileSystems_ListByResourceGroup_MaximumSet_Gen.json" + }, + "FileSystems_ListByResourceGroup_MinimumSet_Gen": { + "$ref": "./examples/FileSystems_ListByResourceGroup_MinimumSet_Gen.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Qumulo.Storage/fileSystems/{fileSystemName}": { + "get": { + "operationId": "FileSystems_Get", + "tags": [ + "FileSystems" + ], + "description": "Get a FileSystemResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "fileSystemName", + "in": "path", + "description": "Name of the File System resource", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-]*$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FileSystems_Get": { + "$ref": "./examples/FileSystems_Get_MaximumSet_Gen.json" + }, + "FileSystems_Get_MinimumSet_Gen": { + "$ref": "./examples/FileSystems_Get_MinimumSet_Gen.json" + } + } + }, + "put": { + "operationId": "FileSystems_CreateOrUpdate", + "tags": [ + "FileSystems" + ], + "description": "Create a FileSystemResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "fileSystemName", + "in": "path", + "description": "Name of the File System resource", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-]*$" + }, + { + "name": "resource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResource" + } + } + ], + "responses": { + "200": { + "description": "Resource 'FileSystemResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResource" + } + }, + "201": { + "description": "Resource 'FileSystemResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResource" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FileSystems_CreateOrUpdate": { + "$ref": "./examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json" + }, + "FileSystems_CreateOrUpdate_MinimumSet_Gen": { + "$ref": "./examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-long-running-operation": true + }, + "patch": { + "operationId": "FileSystems_Update", + "tags": [ + "FileSystems" + ], + "description": "Update a FileSystemResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "fileSystemName", + "in": "path", + "description": "Name of the File System resource", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-]*$" + }, + { + "name": "properties", + "in": "body", + "description": "The resource properties to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResourceUpdate" + } + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FileSystems_Update": { + "$ref": "./examples/FileSystems_Update_MaximumSet_Gen.json" + }, + "FileSystems_Update_MinimumSet_Gen": { + "$ref": "./examples/FileSystems_Update_MinimumSet_Gen.json" + } + } + }, + "delete": { + "operationId": "FileSystems_Delete", + "tags": [ + "FileSystems" + ], + "description": "Delete a FileSystemResource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "fileSystemName", + "in": "path", + "description": "Name of the File System resource", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-]*$" + } + ], + "responses": { + "202": { + "description": "Resource deletion accepted.", + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "format": "uri", + "description": "A link to the status monitor" + }, + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "FileSystems_Delete": { + "$ref": "./examples/FileSystems_Delete_MaximumSet_Gen.json" + }, + "FileSystems_Delete_MinimumSet_Gen": { + "$ref": "./examples/FileSystems_Delete_MinimumSet_Gen.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "FileSystemResourceListResult": { + "type": "object", + "description": "The response of a FileSystemResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The FileSystemResource items on this page", + "items": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "LiftrBase.MarketplaceDetails": { + "type": "object", + "description": "MarketplaceDetails of Qumulo FileSystem resource", + "properties": { + "marketplaceSubscriptionId": { + "type": "string", + "description": "Marketplace Subscription Id" + }, + "planId": { + "type": "string", + "description": "Plan Id" + }, + "offerId": { + "type": "string", + "description": "Offer Id" + }, + "publisherId": { + "type": "string", + "description": "Publisher Id" + }, + "termUnit": { + "type": "string", + "description": "Term Unit" + }, + "marketplaceSubscriptionStatus": { + "$ref": "#/definitions/LiftrBase.MarketplaceSubscriptionStatus", + "description": "Marketplace subscription status", + "readOnly": true + } + }, + "required": [ + "planId", + "offerId" + ] + }, + "LiftrBase.MarketplaceSubscriptionStatus": { + "type": "string", + "description": "Marketplace subscription status of the file system resource", + "enum": [ + "PendingFulfillmentStart", + "Subscribed", + "Suspended", + "Unsubscribed" + ], + "x-ms-enum": { + "name": "MarketplaceSubscriptionStatus", + "modelAsString": true, + "values": [ + { + "name": "PendingFulfillmentStart", + "value": "PendingFulfillmentStart", + "description": "Fulfillment has not started" + }, + { + "name": "Subscribed", + "value": "Subscribed", + "description": "Marketplace offer is subscribed" + }, + { + "name": "Suspended", + "value": "Suspended", + "description": "Marketplace offer is suspended because of non payment" + }, + { + "name": "Unsubscribed", + "value": "Unsubscribed", + "description": "Marketplace offer is unsubscribed" + } + ] + } + }, + "LiftrBase.ProvisioningState": { + "type": "string", + "description": "Provisioning State of the File system resource", + "enum": [ + "Accepted", + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled", + "Deleted" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true, + "values": [ + { + "name": "Accepted", + "value": "Accepted", + "description": "File system resource creation request accepted" + }, + { + "name": "Creating", + "value": "Creating", + "description": "File system resource creation started" + }, + { + "name": "Updating", + "value": "Updating", + "description": "File system resource is being updated" + }, + { + "name": "Deleting", + "value": "Deleting", + "description": "File system resource deletion started" + }, + { + "name": "Succeeded", + "value": "Succeeded", + "description": "File system resource creation successful" + }, + { + "name": "Failed", + "value": "Failed", + "description": "File system resource creation failed" + }, + { + "name": "Canceled", + "value": "Canceled", + "description": "File system resource creation canceled" + }, + { + "name": "Deleted", + "value": "Deleted", + "description": "File system resource is deleted" + } + ] + }, + "readOnly": true + }, + "LiftrBase.Storage.FileSystemResource": { + "type": "object", + "description": "Concrete tracked resource types can be created by aliasing this type using a specific property type.", + "properties": { + "properties": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResourceProperties", + "description": "The resource-specific properties for this resource.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/ManagedServiceIdentity", + "description": "The managed service identities assigned to this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ] + }, + "LiftrBase.Storage.FileSystemResourceProperties": { + "type": "object", + "description": "Properties specific to the Qumulo File System resource", + "properties": { + "marketplaceDetails": { + "$ref": "#/definitions/LiftrBase.MarketplaceDetails", + "description": "Marketplace details" + }, + "provisioningState": { + "$ref": "#/definitions/LiftrBase.ProvisioningState", + "description": "Provisioning State of the resource", + "readOnly": true + }, + "storageSku": { + "type": "string", + "description": "Storage Sku" + }, + "userDetails": { + "$ref": "#/definitions/LiftrBase.UserDetails", + "description": "User Details" + }, + "delegatedSubnetId": { + "type": "string", + "description": "Delegated subnet id for Vnet injection" + }, + "clusterLoginUrl": { + "type": "string", + "description": "File system Id of the resource" + }, + "privateIPs": { + "type": "array", + "description": "Private IPs of the resource", + "items": { + "type": "string" + } + }, + "adminPassword": { + "type": "string", + "description": "Initial administrator password of the resource", + "x-ms-secret": true + }, + "availabilityZone": { + "type": "string", + "description": "Availability zone" + } + }, + "required": [ + "marketplaceDetails", + "storageSku", + "userDetails", + "delegatedSubnetId", + "adminPassword" + ] + }, + "LiftrBase.Storage.FileSystemResourceUpdate": { + "type": "object", + "description": "The type used for update operations of the FileSystemResource.", + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/ManagedServiceIdentity", + "description": "The managed service identities assigned to this resource." + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/LiftrBase.Storage.FileSystemResourceUpdateProperties", + "description": "The updatable properties of the FileSystemResource." + } + } + }, + "LiftrBase.Storage.FileSystemResourceUpdateProperties": { + "type": "object", + "description": "The updatable properties of the FileSystemResource.", + "properties": { + "marketplaceDetails": { + "$ref": "#/definitions/LiftrBase.MarketplaceDetails", + "description": "Marketplace details" + }, + "userDetails": { + "$ref": "#/definitions/LiftrBase.UserDetails", + "description": "User Details" + }, + "delegatedSubnetId": { + "type": "string", + "description": "Delegated subnet id for Vnet injection" + } + } + }, + "LiftrBase.UserDetails": { + "type": "object", + "description": "User Details of Qumulo FileSystem resource", + "properties": { + "email": { + "type": "string", + "description": "User Email", + "x-ms-secret": true + } + }, + "required": [ + "email" + ] + } + }, + "parameters": {} +} diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json new file mode 100644 index 000000000000..0a5033a3a8a9 --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_CreateOrUpdate_MaximumSet_Gen.json @@ -0,0 +1,147 @@ +{ + "title": "FileSystems_CreateOrUpdate", + "operationId": "FileSystems_CreateOrUpdate", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "hfcmtgaes", + "resource": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "storageSku": "yhyzby", + "userDetails": { + "email": "aqsnzyroo" + }, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "adminPassword": "fakeTestSecretPlaceholder", + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "type": "None", + "userAssignedIdentities": { + "key7679": {} + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + }, + "201": { + "headers": { + "Retry-After": 10, + "Azure-AsyncOperation": "https://contoso.com/operationstatus" + }, + "body": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_CreateOrUpdate_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json similarity index 65% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_CreateOrUpdate_MinimumSet_Gen.json rename to specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json index e0d9ae260b41..53811b13e3cd 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_CreateOrUpdate_MinimumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_CreateOrUpdate_MinimumSet_Gen.json @@ -1,77 +1,71 @@ { "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "aaaaaaaaaaaaaaaaaaaaaaaa", - "resourceGroupName": "rgopenapi", + "api-version": "2024-06-19", "fileSystemName": "aaaaaaaa", "resource": { + "location": "aaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "adminPassword": "fakeTestSecretPlaceholder", + "delegatedSubnetId": "aaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaa", - "planId": "aaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaaaaaaaaaaaaaaaaaa", - "publisherId": "aa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaa" }, - "provisioningState": "Accepted", - "userDetails": { - "email": "aaaaaaaaaaaaaaaaaaaaaaa" - }, - "delegatedSubnetId": "aaaaaaaaaa", - "adminPassword": "ekceujoecaashtjlsgcymnrdozk", "storageSku": "Standard", - "initialCapacity": 9 - }, - "location": "aaaaaaaaaaaaaaaaaaaaaaaaa" - } + "userDetails": { + "email": "viptslwulnpaupfljvnjeq" + } + } + }, + "resourceGroupName": "rgopenapi", + "subscriptionId": "aaaaaaaaaaaaaaaaaaaaaaaa" }, "responses": { - "201": { - "headers": { - "Azure-AsyncOperation": "https://foo.com/operationstatus" - }, + "200": { "body": { "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaa", - "planId": "aaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaaaaaaaaaaaaaaaaaa", - "publisherId": "aa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaa", + "publisherId": "aa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aaaaaaaaaaaaaaaaaaaaaaa" - }, - "delegatedSubnetId": "aaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "location": "aaaaaaaaa" + "userDetails": {} + } } }, - "200": { + "201": { "body": { "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaa", - "planId": "aaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaaaaaaaaaaaaaaaaaa", - "publisherId": "aa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaa", + "publisherId": "aa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aaaaaaaaaaaaaaaaaaaaaaa" - }, - "delegatedSubnetId": "aaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "location": "aaaaaaaaa" + "userDetails": {} + } + }, + "headers": { + "Retry-After": 10, + "Azure-AsyncOperation": "https://foo.com/operationstatus" } } - } + }, + "operationId": "FileSystems_CreateOrUpdate", + "title": "FileSystems_CreateOrUpdate_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Delete_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Delete_MaximumSet_Gen.json new file mode 100644 index 000000000000..ad1724124896 --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Delete_MaximumSet_Gen.json @@ -0,0 +1,19 @@ +{ + "title": "FileSystems_Delete", + "operationId": "FileSystems_Delete", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "xoschzkccroahrykedlvbbnsddq" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 10, + "location": "https://contoso.com/operationstatus" + } + }, + "204": {} + } +} diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Delete_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Delete_MinimumSet_Gen.json new file mode 100644 index 000000000000..d28e0ae5ed92 --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Delete_MinimumSet_Gen.json @@ -0,0 +1,19 @@ +{ + "title": "FileSystems_Delete_MinimumSet_Gen", + "operationId": "FileSystems_Delete", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "jgtskkiplquyrlkaxvhdg" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 10, + "location": "https://contoso.com/operationstatus" + } + }, + "204": {} + } +} diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Get_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Get_MaximumSet_Gen.json new file mode 100644 index 000000000000..5b60318e3d84 --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Get_MaximumSet_Gen.json @@ -0,0 +1,61 @@ +{ + "title": "FileSystems_Get", + "operationId": "FileSystems_Get", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "sihbehcisdqtqqyfiewiiaphgh" + }, + "responses": { + "200": { + "body": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Update_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Get_MinimumSet_Gen.json similarity index 65% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Update_MinimumSet_Gen.json rename to specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Get_MinimumSet_Gen.json index 22303fc8ee85..d24f92bc0333 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_Update_MinimumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Get_MinimumSet_Gen.json @@ -1,33 +1,32 @@ { "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "aaaaaaa", - "resourceGroupName": "rgQumulo", + "api-version": "2024-06-19", "fileSystemName": "aaaaaaaaaaaaaaaaa", - "properties": {} + "resourceGroupName": "rgQumulo", + "subscriptionId": "aaaaaaa" }, "responses": { "200": { "body": { + "name": "aaaaa", + "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaaaaaa", - "planId": "aaaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaa", - "publisherId": "aaaaaaaaaaaaaaaaaaaa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaaa", + "termUnit": "zxv" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aa" - }, - "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "name": "aaaaa", - "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "userDetails": {} + } } } - } + }, + "operationId": "FileSystems_Get", + "title": "FileSystems_Get_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListByResourceGroup_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListByResourceGroup_MaximumSet_Gen.json new file mode 100644 index 000000000000..bbecaa117da0 --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListByResourceGroup_MaximumSet_Gen.json @@ -0,0 +1,65 @@ +{ + "title": "FileSystems_ListByResourceGroup", + "operationId": "FileSystems_ListByResourceGroup", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + ], + "nextLink": "https://microsoft.com/a" + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListByResourceGroup_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListByResourceGroup_MinimumSet_Gen.json similarity index 60% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListByResourceGroup_MinimumSet_Gen.json rename to specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListByResourceGroup_MinimumSet_Gen.json index e6116376ca5d..835ecfb71204 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListByResourceGroup_MinimumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListByResourceGroup_MinimumSet_Gen.json @@ -1,36 +1,34 @@ { "parameters": { - "api-version": "2022-06-27-preview", - "subscriptionId": "aaaaaaa", - "resourceGroupName": "rgQumulo" + "api-version": "2024-06-19", + "resourceGroupName": "rgQumulo", + "subscriptionId": "aaaaaaa" }, "responses": { "200": { "body": { "value": [ { + "name": "aaaaa", "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaaaaaa", - "planId": "aaaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaa", - "publisherId": "aaaaaaaaaaaaaaaaaaaa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaaa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aa" - }, - "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "name": "aaaaa", - "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "userDetails": {} + } } ] } } - } + }, + "operationId": "FileSystems_ListByResourceGroup", + "title": "FileSystems_ListByResourceGroup_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListBySubscription_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListBySubscription_MaximumSet_Gen.json new file mode 100644 index 000000000000..2b22140e5c1f --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListBySubscription_MaximumSet_Gen.json @@ -0,0 +1,64 @@ +{ + "title": "FileSystems_ListBySubscription", + "operationId": "FileSystems_ListBySubscription", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + ], + "nextLink": "https://microsoft.com/a" + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListBySubscription_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListBySubscription_MinimumSet_Gen.json similarity index 66% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListBySubscription_MinimumSet_Gen.json rename to specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListBySubscription_MinimumSet_Gen.json index 6b2db1406e1a..4a9979aab1c9 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-06-27-preview/FileSystems_ListBySubscription_MinimumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_ListBySubscription_MinimumSet_Gen.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-06-27-preview", + "api-version": "2024-06-19", "subscriptionId": "aaaaaaa" }, "responses": { @@ -8,28 +8,26 @@ "body": { "value": [ { + "name": "aaaaa", "id": "aaaaaaaaaaaaaaaaa", + "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaaaaaa", - "planId": "aaaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaa", - "publisherId": "aaaaaaaaaaaaaaaaaaaa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaaa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aa" - }, - "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "name": "aaaaa", - "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "userDetails": {} + } } ] } } - } + }, + "operationId": "FileSystems_ListBySubscription", + "title": "FileSystems_ListBySubscription_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Update_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Update_MaximumSet_Gen.json new file mode 100644 index 000000000000..c14f02923019 --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Update_MaximumSet_Gen.json @@ -0,0 +1,86 @@ +{ + "title": "FileSystems_Update", + "operationId": "FileSystems_Update", + "parameters": { + "api-version": "2024-06-19", + "subscriptionId": "382E8C7A-AC80-4D70-8580-EFE99537B9B7", + "resourceGroupName": "rgQumulo", + "fileSystemName": "ahpixnvykleksjlr", + "properties": { + "identity": { + "type": "None", + "userAssignedIdentities": { + "key7679": {} + } + }, + "tags": { + "key357": "ztkkvhfia" + }, + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "userDetails": { + "email": "aqsnzyroo" + }, + "delegatedSubnetId": "bqaryqsjlackxphpmzffgoqsvm" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "marketplaceDetails": { + "marketplaceSubscriptionId": "xaqtkloiyovmexqhn", + "planId": "fwtpz", + "offerId": "s", + "publisherId": "czxcfrwodazyaft", + "termUnit": "cfwwczmygsimcyvoclcw", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + }, + "provisioningState": "Accepted", + "storageSku": "yhyzby", + "userDetails": {}, + "delegatedSubnetId": "jykmxrf", + "clusterLoginUrl": "ykaynsjvhihdthkkvvodjrgc", + "privateIPs": [ + "gzken" + ], + "availabilityZone": "eqdvbdiuwmhhzqzmksmwllpddqquwt" + }, + "identity": { + "principalId": "11111111-1111-1111-1111-111111111111", + "tenantId": "11111111-1111-1111-1111-111111111111", + "type": "None", + "userAssignedIdentities": { + "key7679": { + "principalId": "11111111-1111-1111-1111-111111111111", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + }, + "tags": { + "key7090": "rurrdiaqp" + }, + "location": "pnb", + "id": "rfta", + "name": "stftolw", + "type": "wj", + "systemData": { + "createdBy": "usnkckwkizihezb", + "createdByType": "User", + "createdAt": "2024-03-21T08:11:54.895Z", + "lastModifiedBy": "yjsiqdgtsmycxlncjceemlucn", + "lastModifiedByType": "User", + "lastModifiedAt": "2024-03-21T08:11:54.895Z" + } + } + } + } +} diff --git a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Get_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Update_MinimumSet_Gen.json similarity index 56% rename from specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Get_MinimumSet_Gen.json rename to specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Update_MinimumSet_Gen.json index 955c42bb3e19..2199c9f27d4d 100644 --- a/specification/liftrqumulo/Qumulo.Management/examples/2022-10-12-preview/FileSystems_Get_MinimumSet_Gen.json +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/FileSystems_Update_MinimumSet_Gen.json @@ -1,33 +1,31 @@ { "parameters": { - "api-version": "2022-10-12-preview", - "subscriptionId": "aaaaaaa", + "api-version": "2024-06-19", + "fileSystemName": "aaaaaaaaaaaaaaaaa", + "properties": {}, "resourceGroupName": "rgQumulo", - "fileSystemName": "aaaaaaaaaaaaaaaaa" + "subscriptionId": "aaaaaaa" }, "responses": { "200": { "body": { - "id": "aaaaaaaaaaaaaaaaa", + "name": "aaaaa", + "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa", "properties": { + "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "marketplaceDetails": { "marketplaceSubscriptionId": "aaaaaaaaaaaaaaaaa", - "planId": "aaaaaaa", + "marketplaceSubscriptionStatus": "PendingFulfillmentStart", "offerId": "aaaaaaaaa", - "publisherId": "aaaaaaaaaaaaaaaaaaaa", - "marketplaceSubscriptionStatus": "PendingFulfillmentStart" + "planId": "aaaaaaa" }, "provisioningState": "Accepted", - "userDetails": { - "email": "aa" - }, - "delegatedSubnetId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "storageSku": "Standard", - "initialCapacity": 9 - }, - "name": "aaaaa", - "location": "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "userDetails": {} + } } } - } + }, + "operationId": "FileSystems_Update", + "title": "FileSystems_Update_MinimumSet_Gen" } diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/Operations_List_MaximumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/Operations_List_MaximumSet_Gen.json new file mode 100644 index 000000000000..1eb2670e6c1f --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/Operations_List_MaximumSet_Gen.json @@ -0,0 +1,28 @@ +{ + "title": "Operations_List", + "operationId": "Operations_List", + "parameters": { + "api-version": "2024-06-19" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "melhpzamnyx", + "isDataAction": true, + "display": { + "provider": "ilyrhd", + "resource": "vjz", + "operation": "ayfoeuuyhtwjafroqzimyujr", + "description": "vodhl" + }, + "origin": "user", + "actionType": "Internal" + } + ], + "nextLink": "vxtunikmzmz" + } + } + } +} diff --git a/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/Operations_List_MinimumSet_Gen.json b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/Operations_List_MinimumSet_Gen.json new file mode 100644 index 000000000000..4f4302e48074 --- /dev/null +++ b/specification/liftrqumulo/resource-manager/Qumulo.Storage/stable/2024-06-19/examples/Operations_List_MinimumSet_Gen.json @@ -0,0 +1,12 @@ +{ + "title": "Operations_List_MinimumSet_Gen", + "operationId": "Operations_List", + "parameters": { + "api-version": "2024-06-19" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/liftrqumulo/resource-manager/readme.go.md b/specification/liftrqumulo/resource-manager/readme.go.md index 6b8f28b1d784..0a58d895d454 100644 --- a/specification/liftrqumulo/resource-manager/readme.go.md +++ b/specification/liftrqumulo/resource-manager/readme.go.md @@ -8,4 +8,29 @@ module-name: sdk/resourcemanager/liftrqumulo/armqumulo module: github.com/Azure/azure-sdk-for-go/$(module-name) output-folder: $(go-sdk-folder)/$(module-name) azure-arm: true +directive: + - rename-model: + from: 'LiftrBase.Storage.FileSystemResourceUpdate' + to: FileSystemResourceUpdate + - rename-model: + from: 'LiftrBase.Storage.FileSystemResource' + to: FileSystemResource + - rename-model: + from: 'LiftrBase.Storage.FileSystemResourceUpdateProperties' + to: FileSystemResourceUpdateProperties + - rename-model: + from: 'LiftrBase.Storage.FileSystemResourceProperties' + to: FileSystemResourceProperties + - rename-model: + from: 'LiftrBase.MarketplaceDetails' + to: MarketplaceDetails + - rename-model: + from: 'LiftrBase.MarketplaceSubscriptionStatus' + to: MarketplaceSubscriptionStatus + - rename-model: + from: 'LiftrBase.UserDetails' + to: UserDetails + - rename-model: + from: 'LiftrBase.ProvisioningState' + to: ProvisioningState ``` \ No newline at end of file diff --git a/specification/liftrqumulo/resource-manager/readme.md b/specification/liftrqumulo/resource-manager/readme.md index b39953c48b64..f7cd7746a285 100644 --- a/specification/liftrqumulo/resource-manager/readme.md +++ b/specification/liftrqumulo/resource-manager/readme.md @@ -27,7 +27,7 @@ These are the global settings for the Qumulo.Storage. ``` yaml openapi-type: arm openapi-subtype: rpaas -tag: package-2022-10 +tag: package-2024-06-19 ``` @@ -57,6 +57,15 @@ input-file: - Qumulo.Storage/preview/2022-10-12-preview/Qumulo.Storage.json ``` +### Tag: package-2024-06-19 + +These settings apply only when `--tag=package-2024-06-19` is specified on the command line. + +``` yaml $(tag) == 'package-2024-06-19' +input-file: + - Qumulo.Storage/stable/2024-06-19/Qumulo.Storage.json +``` + --- # Code Generation diff --git a/specification/liftrqumulo/resource-manager/readme.typescript.md b/specification/liftrqumulo/resource-manager/readme.typescript.md index 3a02e4bea4c1..d76e0cab6129 100644 --- a/specification/liftrqumulo/resource-manager/readme.typescript.md +++ b/specification/liftrqumulo/resource-manager/readme.typescript.md @@ -10,4 +10,30 @@ typescript: output-folder: "$(typescript-sdks-folder)/sdk/liftrqumulo/arm-qumulo" payload-flattening-threshold: 1 generate-metadata: true + +directive: + - rename-model: + from: 'LiftrBase.Storage.FileSystemResourceUpdate' + to: FileSystemResourceUpdate + - rename-model: + from: 'LiftrBase.Storage.FileSystemResource' + to: FileSystemResource + - rename-model: + from: 'LiftrBase.Storage.FileSystemResourceUpdateProperties' + to: FileSystemResourceUpdateProperties + - rename-model: + from: 'LiftrBase.Storage.FileSystemResourceProperties' + to: FileSystemResourceProperties + - rename-model: + from: 'LiftrBase.MarketplaceDetails' + to: MarketplaceDetails + - rename-model: + from: 'LiftrBase.MarketplaceSubscriptionStatus' + to: MarketplaceSubscriptionStatus + - rename-model: + from: 'LiftrBase.UserDetails' + to: UserDetails + - rename-model: + from: 'LiftrBase.ProvisioningState' + to: ProvisioningState ``` diff --git a/specification/liftrqumulo/resource-manager/sdk-suppressions.yaml b/specification/liftrqumulo/resource-manager/sdk-suppressions.yaml new file mode 100644 index 000000000000..38ec1fd82d93 --- /dev/null +++ b/specification/liftrqumulo/resource-manager/sdk-suppressions.yaml @@ -0,0 +1,9 @@ +suppressions: + azure-sdk-for-go: + - package: sdk/resourcemanager/liftrqumulo/armqumulo + breaking-changes: + - Enum `StorageSKU` has been removed + - Field `ClusterLoginURL`, `PrivateIPs` of struct `FileSystemResourceUpdateProperties` has been removed + - Field `InitialCapacity` of struct `FileSystemResourceProperties` has been removed + - Type of `FileSystemResourceProperties.StorageSKU` has been changed from `*StorageSKU` to `*string` + - "`ProvisioningStateNotSpecified` from enum `ProvisioningState` has been removed" From b3f6368f53a38c5a038dfe4ccdb046a9a3dec622 Mon Sep 17 00:00:00 2001 From: Felipe Dalorzo <162249355+fdalorzo-msft@users.noreply.github.com> Date: Mon, 8 Jul 2024 11:10:55 -0600 Subject: [PATCH 51/52] #29691 adding OperationContext (#29692) --- .../communicationservicescallautomation.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/specification/communication/data-plane/CallAutomation/preview/2024-06-15-preview/communicationservicescallautomation.json b/specification/communication/data-plane/CallAutomation/preview/2024-06-15-preview/communicationservicescallautomation.json index d57df1a6a778..359a291c9ab7 100644 --- a/specification/communication/data-plane/CallAutomation/preview/2024-06-15-preview/communicationservicescallautomation.json +++ b/specification/communication/data-plane/CallAutomation/preview/2024-06-15-preview/communicationservicescallautomation.json @@ -2400,6 +2400,10 @@ "speechRecognitionModelEndpointId": { "description": "Sets Endpoint id where the custom model was deployed.", "type": "string" + }, + "operationContext": { + "description": "The value to identify context of the operation.", + "type": "string" } } }, @@ -2703,6 +2707,10 @@ "operationCallbackUri": { "description": "Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation.\r\nThis setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used.", "type": "string" + }, + "operationContext": { + "description": "The value to identify context of the operation.", + "type": "string" } } }, From cbbe228fd422db02b65e2748f83df5f2bcad7581 Mon Sep 17 00:00:00 2001 From: Avinash Agarwal Date: Mon, 8 Jul 2024 11:21:38 -0700 Subject: [PATCH 52/52] Add new API Version 2024-06-01-preview for Microsoft.Resources\changes (#29325) * [Changes] Swagger updates for new Microsoft.Resources\changes API Version 2024-06-01 * Updated references in readme.md * Ran prettifier --- .../preview/2024-06-01-preview/changes.json | 410 ++++++++++++++++++ .../examples/GetChange.json | 47 ++ .../examples/ListChanges.json | 76 ++++ .../resources/resource-manager/readme.md | 12 + 4 files changed, 545 insertions(+) create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/changes.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/examples/GetChange.json create mode 100644 specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/examples/ListChanges.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/changes.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/changes.json new file mode 100644 index 000000000000..8dbba209106e --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/changes.json @@ -0,0 +1,410 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-06-01-preview", + "title": "ChangesClient", + "description": "The Resource Changes Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Resources/changes": { + "get": { + "tags": [ + "ListChanges" + ], + "operationId": "Changes_List", + "x-ms-examples": { + "ListChanges": { + "$ref": "./examples/ListChanges.json" + } + }, + "description": "Obtains a list of change resources from the past 14 days for the target resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/ResourceTypeParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/$top" + }, + { + "$ref": "#/parameters/$skipToken" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ChangeResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Resources/changes/{changeResourceId}": { + "get": { + "tags": [ + "GetChange" + ], + "operationId": "Changes_Get", + "x-ms-examples": { + "GetChange": { + "$ref": "./examples/GetChange.json" + } + }, + "description": "Obtains the specified change resource for the target resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/ResourceTypeParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ChangeResourceIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ChangeResourceResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ChangeResourceListResult": { + "description": "The list of resources", + "type": "object", + "properties": { + "nextLink": { + "type": "string", + "description": "The link used to get the next page of Change Resources" + }, + "value": { + "description": "The list of resources", + "type": "array", + "items": { + "$ref": "#/definitions/ChangeResourceResult" + } + } + } + }, + "ChangeResourceResult": { + "description": "Change Resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ChangeProperties" + } + } + }, + "ChangeProperties": { + "description": "The properties of a change", + "type": "object", + "properties": { + "targetResourceId": { + "description": "The fully qualified ID of the target resource that was changed", + "type": "string", + "format": "arm-id", + "readOnly": true + }, + "targetResourceType": { + "description": "The namespace and type of the resource", + "type": "string", + "readOnly": true + }, + "changeType": { + "description": "The type of change that was captured in the resource", + "type": "string", + "readOnly": true, + "enum": [ + "Update", + "Delete", + "Create" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": true, + "values": [ + { + "value": "Update", + "description": "An existing resource underwent a change", + "name": "Update" + }, + { + "value": "Delete", + "description": "An existing resource was deleted", + "name": "Delete" + }, + { + "value": "Create", + "description": "A newly created resource", + "name": "Create" + } + ] + } + }, + "changeAttributes": { + "$ref": "#/definitions/ChangeAttributes" + }, + "changes": { + "$ref": "#/definitions/ChangesDictionary" + } + } + }, + "ChangeAttributes": { + "description": "Details about the change resource", + "type": "object", + "properties": { + "correlationId": { + "description": "The Azure correlation ID of the change resource", + "type": "string", + "readOnly": true + }, + "timestamp": { + "description": "The time the change(s) on the target resource ocurred", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "changesCount": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of changes this resource captures" + }, + "previousResourceSnapshotId": { + "description": "The GUID of the previous snapshot", + "type": "string", + "readOnly": true + }, + "newResourceSnapshotId": { + "description": "The GUID of the new snapshot", + "type": "string", + "readOnly": true + }, + "isTruncated": { + "description": "The flag indicating whether property changes dictionary was truncated in this resource", + "type": "boolean", + "readOnly": true + }, + "changedBy": { + "description": "The identifier i.e. email id or application id of the entity that made the change(s)", + "type": "string", + "readOnly": true + }, + "changedByType": { + "description": "The entity type that made the change(s)", + "type": "string", + "readOnly": true, + "enum": [ + "Application", + "User", + "ManagedIdentity", + "Unknown" + ], + "x-ms-enum": { + "name": "changedByType", + "modelAsString": true, + "values": [ + { + "value": "Application", + "description": "An application made the change(s)", + "name": "Application" + }, + { + "value": "User", + "description": "A user made the change(s)", + "name": "User" + }, + { + "value": "ManagedIdentity", + "description": "A ManagedIdentity made the change(s)", + "name": "ManagedIdentity" + }, + { + "value": "Unknown", + "description": "An Unknown entity made the change(s)", + "name": "Unknown" + } + ] + } + }, + "clientType": { + "description": "Client used to make the changes", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The Azure Resource Provider operation that was invoked to make the change(s). See [here](https://learn.microsoft.com/azure/role-based-access-control/resource-provider-operations) for a full list of possible values", + "type": "string", + "readOnly": true + }, + "changeControlId": { + "description": "The resource identifier of the change control resource associated with this change record.", + "type": "string", + "format": "arm-id", + "readOnly": true + } + } + }, + "ChangesDictionary": { + "description": "A dictionary with changed property name as a key and the change details as the value", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ChangeBase" + } + }, + "ChangeBase": { + "description": "An individual change on the target resource", + "type": "object", + "properties": { + "previousValue": { + "description": "The target resource property value before the change", + "type": "string", + "readOnly": true, + "x-nullable": true + }, + "newValue": { + "description": "The target resource property value after the change", + "type": "string", + "readOnly": true, + "x-nullable": true + } + } + } + }, + "parameters": { + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "maxLength": 256, + "description": "The name of the resource provider namespace.", + "x-ms-parameter-location": "method" + }, + "ResourceTypeParameter": { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "maxLength": 256, + "description": "The name of the resource type.", + "x-ms-parameter-location": "method" + }, + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource.", + "x-ms-parameter-location": "method" + }, + "ChangeResourceIdParameter": { + "name": "changeResourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the change resource", + "x-ms-parameter-location": "method" + }, + "$top": { + "required": false, + "default": 100, + "description": "(Optional) Set the maximum number of results per response.", + "in": "query", + "maximum": 100, + "minimum": 1, + "name": "$top", + "type": "integer", + "format": "int64", + "x-ms-parameter-location": "method" + }, + "$skipToken": { + "required": false, + "description": "(Optional) The page-continuation token", + "in": "query", + "name": "$skipToken", + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/examples/GetChange.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/examples/GetChange.json new file mode 100644 index 000000000000..d3d5c936598d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/examples/GetChange.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceProviderNamespace": "Microsoft.Storage", + "resourceType": "storageAccounts", + "resourceName": "myStorageAccount", + "api-version": "2024-06-01-preview", + "changeResourceId": "1d58d72f-0719-4a48-9228-b7ea682885bf" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount/providers/Microsoft.Resources/changes/1d58d72f-0719-4a48-9228-b7ea682885bf", + "name": "1d58d72f-0719-4a48-9228-b7ea682885bf", + "type": "Microsoft.Resources/changes", + "properties": { + "targetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "targetResourceType": "Microsoft.Storage/storageAccounts", + "changeType": "Update", + "changeAttributes": { + "correlationId": "88420d5d-8d0e-471f-9115-10d34750c617", + "timestamp": "2021-11-19T14:29:09.9210000Z", + "changesCount": 2, + "previousResourceSnapshotId": "ed90e35a-1661-42cc-a44c-e27f508005be", + "newResourceSnapshotId": "6eac9d0f-63b4-4e7f-97a5-740c73757efb", + "changedBy": "someAlias@microsoft.com", + "changedByType": "User", + "clientType": "Portal", + "operation": "Microsoft.Namespace/ResourceType/write", + "changeControlId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.AzureChangeControl/changecontrols/myChangeControl" + }, + "changes": { + "properties.provisioningState": { + "previousValue": "Updating", + "newValue": "Succeeded" + }, + "tags.key1": { + "previousValue": null, + "newValue": "someValue" + } + } + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/examples/ListChanges.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/examples/ListChanges.json new file mode 100644 index 000000000000..7e7bb22b0131 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2024-06-01-preview/examples/ListChanges.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "resourceProviderNamespace": "Microsoft.Storage", + "resourceType": "storageAccounts", + "resourceName": "myStorageAccount", + "api-version": "2024-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount/providers/Microsoft.Resources/changes/a9f34285-13a2-e79c-f468-cfb71c7bd227", + "name": "a9f34285-13a2-e79c-f468-cfb71c7bd227", + "type": "Microsoft.Resources/changes", + "properties": { + "targetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "targetResourceType": "Microsoft.Storage/storageAccounts", + "changeType": "Update", + "changeAttributes": { + "correlationId": "88420d5d-8d0e-471f-9115-10d34750c617", + "timestamp": "2021-11-19T14:29:09.9210000Z", + "changesCount": 2, + "previousResourceSnapshotId": "ed90e35a-1661-42cc-a44c-e27f508005be", + "newResourceSnapshotId": "6eac9d0f-63b4-4e7f-97a5-740c73757efb", + "changedBy": "9500bb33-43da-4588-80b8-f65430dd937a", + "changedByType": "Application", + "clientType": "SDK", + "operation": "Microsoft.Namespace/ResourceType/write", + "changeControlId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.AzureChangeControl/changecontrols/myChangeControl" + }, + "changes": { + "properties.provisioningState": { + "previousValue": "Updating", + "newValue": "Succeeded" + }, + "tags.key1": { + "previousValue": null, + "newValue": "someValue" + }, + "properties.vms[5].sku[1]": { + "previousValue": "Standard", + "newValue": null + } + } + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount/providers/Microsoft.Resources/changes/a9f34285-13a2-e79c-f468-cfb71c7bd227", + "name": "a9f34285-13a2-e79c-f468-cfb71c7bd227", + "type": "Microsoft.Resources/changes", + "properties": { + "targetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "targetResourceType": "Microsoft.Storage/storageAccounts", + "changeType": "Create", + "changeAttributes": { + "changesCount": 0, + "correlationId": "88420d5d-8d0e-471f-9115-10d34750c617", + "timestamp": "2021-11-19T14:29:09.9210000Z", + "previousResourceSnapshotId": "b09f5e52-0b46-4d13-84a9-08653d39fed6", + "newResourceSnapshotId": "4db20fc0-de17-4cdd-92d8-fd6bf94b9fd9", + "changedBy": "9500bb33-43da-4588-80b8-f65430dd937a", + "changedByType": "Application", + "clientType": "SDK", + "operation": "Microsoft.Namespace/ResourceType/write" + }, + "changes": {} + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 913bae224639..596a5be4769a 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -258,6 +258,15 @@ input-file: - Microsoft.Resources/preview/2023-07-01-preview/changes.json ``` +### Tag: package-changes-2024-06-01-preview + +These settings apply only when `--tag=package-changes-2024-06-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-changes-2024-06-01-preview' +input-file: +- Microsoft.Resources/preview/2024-06-01-preview/changes.json +``` + ### Tag: package-snapshots-2022-11 These settings apply only when `--tag=package-snapshots-2022-11` is specified on the command line. @@ -1355,6 +1364,9 @@ directive: - suppress: AvoidAdditionalProperties from: resources.json reason: Breaking change in order to change the property names for multiple API's. Will fix in the future. + - suppress: AvoidAdditionalProperties + from: changes.json + reason: "Change properties including the dictionary of individual property changes are dynamic types. where clause is not working on all parent fields using this property bag, hence we're suppressing the entire file for now." - suppress: XmsExamplesRequired from: resources.json reason: Xms Examples required is a pre-existing lint error. Not related to this version release. Will fix in the future.